Questions tagged [xpages]

XPages is HCL's web and mobile application development platform for applications built on top of the HCL Domino server.

XPages is a rapid web and mobile application development platform. It allows HCL Notes/Domino data to be displayed to browser clients across all platforms.

The programming model is based on standards and common web development skills like JavaScript, Ajax, the Dojo Toolkit, Server-side JavaScript, Java, JavaServer Faces and it leverages HCL Lotus Domino functionality like the document-oriented database.

Layout

For the user interface XPages focus on the web development standards HTML, CSS and JavaScript. This allows projecting XPages applications to web clients and mobile devices and leveraging the same development skills. Additionally themes can be used as an easier way to manage multiple CSSs. XPages comes with default themes, for example the OneUI theme.

Logic

For client side logic various JavaScript frameworks can be used. However XPages comes with the Dojo Toolkit and Dojo controls can be easily referenced in XPages applications. XPages also uses Dojo internally for certain functionality to make key features easier to use without having to write Dojo code. A special XPages JavaScript library contains further convenience functionality, for example for client side field validations.

UI Controls

In addition to client side logic Dojo can also be used for rich user interface widgets and charts.

Access to Backend Services

As any web application XPages applications can use REST services. XPages also provides easy mechanisms to bind data sources to UI controls so that for many scenarios no code needs to be written. Additionally XPages allows to declaratively only refresh parts of the page via Ajax when submitting data.

Backend Technology

The development of XPages applications is done using HCL Domino Designer. With Designer many key scenarios can be implemented declaratively and rapidly, for example to render a list of entries from a database. Additionally for the business logic both JavaScript and Java code can be written.

JavaServer Faces

XPages is based internally on JavaServer Faces, but developers of XPages aren't required have to have explicit JavaServer Faces skills. The sources of a XPages design element are declared in an XML format called XSP which is compiled into Java code during a build. At runtime this code generates and returns the HTML to various clients.

Tooling with Domino Designer

XPages applications are stored in NSF (Notes Storage Facility) files which are collections of design elements that can be deployed as a whole and developed using Domino Designer. In order to access data XPages and Domino Designer use so called data sources. These data sources can be bound graphically to UI controls on pages. UI controls and other types of controls show up in a palette of controls in Domino Designer and can be dragged and dropped onto pages. Domino Designer also comes with futher convenience functionality, for example field validations, translations, etc.

XPages functionality can be modularized in so called 'Custom Controls' which are XPages controls that can be reused in multiple XPages pages and parameterized based on context.

Server Side JavaScript

In order to write business backend code Server Side JavaScript is used primarily. There are APIs to access the document oriented database and the XPages context - see here for more information on the APIs available. It is also possible to invoke standard Java SDK code from the JavaScript code and to write custom Java code using JSF managed beans.

XPages Runtime Extensibility

The XPages runtime can be extended using the XPages Extensibility API which is based on JavaServer Faces. This capability can for example be used by ISVs who want to provide their own libraries of XPages controls.


More information:

5449 questions
1
vote
4 answers

Hiding and Displaying XPages Custom Controls from HREF

In an XPages application I've been given the following HTML code for a navigation bar which will be used to select which of three different Custom Controls display:
1
vote
1 answer

Setting a field on a form - xPages

I am a newbie to xPages, not to Notes though. I have a type ahead field that works and it brings in the value needed. After that, I want to lookup information for the key they just entered and fill in fields on the form for that document. In the…
1
vote
1 answer

define a Custom Property as a Data Object

Found the issue on my payment Input control. There was a small computed Text field that was failing but not throwing an error. Just stopped the whole process. In any case removed the computedText and it now works. The compositeData formula that…
Bill F
  • 2,057
  • 3
  • 18
  • 39
1
vote
1 answer

defining an object property in a compositeData on a custom control

I'm building an application where I have mainDoc which can have one or more related notes Documents. In the mainDoc there is a repeat control that is bound to Payments.getAllItems(WFSMainDoc.getValue("LinkKey")); The java class Payments has methods…
Bill F
  • 2,057
  • 3
  • 18
  • 39
1
vote
0 answers

Setting Access-Control-Allow-Origin in Notes Agent

Here's my doubt: I have an Xpage that makes a cross-domain GET request... the URL is a notes agent in other domain that returns a XML code. I need to set Access-Control-Allow-Origin to allow it, and I found how to set it in the domino server…
1
vote
2 answers

Cannot Save xPage

My XPage will not save any data that I enter into it. The screen just flashes and the document that is open just redisplays. I assume it has something to do with where the buttons to save (Speichern) / cancel (Abbrechen) have been placed but, no…
Ursus Schneider
  • 447
  • 1
  • 6
  • 22
1
vote
1 answer

Simple Action: Open Page $$PreviousPage and download control

I have a VERY simple edit document XPage that, once I place an upload and download control on it no longer works. The save action (Speichern) just has 2 actions, Save document and Open $$PreviousPage.This works perfectly (I have 3 DataViews that I…
Ursus Schneider
  • 447
  • 1
  • 6
  • 22
1
vote
2 answers

Xpages, picklist

Just curious for creating a picklist is this still the best option http://www.notesin9.com/2011/05/24/notesin9-027-the-view-picker-custom-control or is there something better?
1
vote
1 answer

XPages: losing a viewScoped bean (again)

We have a page with some Accordions. Some accordions start as empty, and they get filled when the user clicks the Accordion bar through a partial update. At the start, this works fine, but if the user opens the accordions in a later stage it doesn't…
D.Bugger
  • 2,300
  • 15
  • 19
1
vote
1 answer

how to run agents in xpages from a web browser?

I got this problem and started googling about it, but no direct answer were pulled out. My query problem is, I'm doing an xpage project and I need to run an agent that uses lotusscript as a language. The agent is used to read a TSV text file and…
Jayson Rondina
  • 149
  • 1
  • 13
1
vote
1 answer

XPages Extension Library Data View Control Confirm Count of Checkbox selection

I have an xpage with a data view control, that has show checkbox and show header checkbox enabled. I want to be able to provide confirmation with a count of selected documents to the user when they click the submit button. Example "Are you sure you…
C. Lackey
  • 98
  • 4
1
vote
0 answers

Filter in restorted DynamicViewPanel resets sort

I have dynamic view control that is used to display several views from a database. I allow users to filter this view using input that is bound to a viewscope variable that is used in keys attribute of Domino View. It works just fine, but some views…
1
vote
1 answer

Connect to a DB2 with JDBC from domino

I am trying to connect to a db2 database from my domino application without using the extension library. I have created a managed bean that it only connects to the db2 and prints a message on the console. I call the method of the managed bean from a…
mike_x_
  • 1,900
  • 3
  • 35
  • 69
1
vote
1 answer

How to set a Java Object as the datasource on a custom Control

I have a Java Bean with a Method that returns an Object of type PaymentItem Payments.getItem(viewScope.vsRIndex); this method returns the nth item from an ArrayList I have a button on my main page that renders a Custom Control on that…
Bill F
  • 2,057
  • 3
  • 18
  • 39
1
vote
1 answer

Getting a Notes Dateime from a ViewEntry into a JAVA Date

I have this block of code in a Java Method: colVal = ve.getColumnValues(); System.out.println("Got colVal"); System.out.println("Col values = " + colVal.toString()); try { Document pDoc = ve.getDocument(); …
Bill F
  • 2,057
  • 3
  • 18
  • 39
1 2 3
99
100