XPages
XPages
Main page

XPages

logo
Community Hub0 subscribers
What are your thoughts?
Be the first to start a discussion here.
Be the first to start a discussion here.
XPages

XPages is an IBM implementation of JavaServer Faces with a server side JavaScript runtime and the built-in NoSQL database IBM Domino. It allows data from IBM Notes and relational databases to be displayed to browser clients on all platforms.

The programming model is based on web development languages and standards including JavaScript, Ajax, Java, the Dojo Toolkit, Server-side JavaScript and JavaServer Faces. XPages uses IBM Domino, IBM's rapid application development platform, including functionality such as the document-oriented database.

By utilizing web standards, XPages applications can be accessed by web clients and mobile devices, allowing the developer to deliver cross-platform applications. For the user interface, XPages focus on the web development standards HTML, CSS and JavaScript. Additionally themes can be used to manage multiple CSS files, and XPages comes with default themes, for example the OneUI theme.

For client side logic various JavaScript frameworks can be used, though 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, an example being for client side field validations. In addition to client side logic, Dojo can also be used for rich user interface widgets and charts.

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.

The development of XPages applications is done using IBM 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. XPages base internally on JavaServer Faces, but the sources of a XPages pages are an XML derivative called XSP which is translated into Java code when running the applications. At runtime, this code returns the HTML to various clients.

In order to access data, XPages and Domino Designer use 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 further convenience functionality, such as field validations and translations. XPages functionality can be modularized in Custom Controls which are XPages controls that can be reused in multiple XPages pages and parametrized based on context.

In order to write business backend code Serverside JavaScript is used primarily. There are APIs to access the document oriented database and the XPages context. Since XPages are based on JSF and JSF is a Java standard it is also possible to invoke standard Java SDK code from the JavaScript code and to write custom Java code using JSF managed beans.

See all
User Avatar
No comments yet.