domino x pages

10
IBM Software Group ® Domino XPages Technology Introduction Philippe Riand – XPages Architect IBM Confidential

Upload: ddrschiw

Post on 21-Jan-2015

1.175 views

Category:

Technology


0 download

DESCRIPTION

This presentation provides a technology overview of XPages in Lotus Notes and Domino.

TRANSCRIPT

Page 1: Domino X Pages

IBM Software Group

®

Domino XPages

Technology Introduction

Philippe Riand – XPages Architect

IBM Confidential

Page 2: Domino X Pages

IBM Software Group | Lotus software

*

XPages Technology Brings State-of-the-Art Web technology to Domino 8.5

Uses JSF as the runtime fundation, but doesn't require JSF/Java skills

Extensive palette of UI controls

Pre-built Web 2.0 functionality (Ajax...)

Allows and enforces reutilization through custom controls

Decreases the time for writing Web Applications Brand new web applications

Modernizing existing web applications or “Web-ify” Notes applications

Solves problems expressed by the Domino community Known limitations are addressed

• UI/Data separation, HTML generation control, Server state, Localization, Extensibility…

Page 3: Domino X Pages

IBM Software Group | Lotus software

*

Designed for Web 2.0 Advanced set of controls

Web pager, Section, Tabbed panel...

Advanced View layouts using repeated sections

Native support for Ajax behaviors Partial refresh, available to every event

Typeahead

Comes with the Dojo JavaScript library Natively leverages Dojo widgets (RichText, Date/Time picker...)

Gives easy access to Dojo modules & widgets

Page 4: Domino X Pages

IBM Software Group | Lotus software

*

Enables Enterprise Scale Applications Extensible architecture

Custom controls

An XPage can call any Java code/library

JSF config files can be used to provide custom options

Extended data access capability Applications can access data located in multiple NSF databases

Multiple documents/views can be displayed on the same page

Built-in localization and internationalization support Support String localization & dedicated pages per locale

Automatic support for user timezone

Page 5: Domino X Pages

IBM Software Group | Lotus software

*

New Design Elements within Designer XPages

An XPage is the UI design element used to render web pages

Based on an extended version of Java Server Faces, adapted to Script developers

Custom controls A custom control is a reusable piece of UI created by assembling existing controls/

behaviors within an XPage

Appear in the control palette similarly to native controls

Parameterizable through custom properties

No Java nor other low level technology is required to create a custom control

Server-side JavaScript libraries JavaScript is the preferred scripting language for XPages

Themes A theme defines the look & feel of the application.

Page 6: Domino X Pages

IBM Software Group | Lotus software

*

Leverages Web/Domino developers skills JavaScript is used as the main scripting language

JavaScript used on the client and on the server

Simple actions are also provided for common tasks

Leverages the existing design elements (Form, Views, Agents...)

Forms carry the document schema (data definition) and some business logic (computed fields...)

Views used to query the Domino store

Agents can be called using the back-end API

Leverages and exposes the back-end API JavaScript accessors on top of the Java back-end API

JavaScript has been extended to support @Functions()

Page 7: Domino X Pages

IBM Software Group | Lotus software

*

Eclipse Based XPages WYSIWYG Editor

Page 8: Domino X Pages

IBM Software Group | Lotus software

*

Complete Control of the Rendering Look & Feel is driven uniquely by CSS

Full support of CSS classes or inline styles

Uses CSS file resources

Support Themes for skinning an applicationPredefined styles for controls

A theme can be defined locally, in an NSF, or globally

2 themes provided out of the box

HTML tags/attributes can be embedded within XPages

Page 9: Domino X Pages

IBM Software Group | Lotus software

*

Domino Integration Fully integrated within the Domino server

Installed as part of the Domino HTTP Server

Automatically starts with the HTTP server

No deployment required – Create a design element within an NSF and save it

Leverages the Domino security model Data security done through the back-end API, using the web user

credentials

Code execution controlled based on developer signatures

Uses a custom Servlet Container Leverages the HTTP server configuration

• Authentication, request dispatching...

Page 10: Domino X Pages

IBM Software Group | Lotus software

*

Performance Highly tuned JSF runtime

The runtime has been highly tuned to optimize both the CPU cycles and the memory consumption

XPages are compiled into efficient Java code

Maximizes the network bandwidth and application responsiveness

HTML content is “Gzipped” on the fly if the browser supports it

Static content (JavaScript libraries, CSS...) is shrinked and pre-compressed (gzip)

Uses HTTP expires header cache for resources