a closer look at xpages in ibm lotus domino designer 8 · pdf filea closer look at xpages in...

28
© 2008 IBM Corporation ® A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

Upload: lamkhanh

Post on 06-Mar-2018

230 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

© 2008 IBM Corporation

®

A Closer Look at XPages in IBM Lotus Domino Designer 8.5

Ray ChanAdvisory I/T SpecialistLotus, IBM Software Group

Page 2: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

2

Agenda

� XPage overview

� From palette to properties: Controls, Ajax & Localization

� Look and feel: CSS & Themes

� Where's the logic? Events, simple actions, JavaScript and more

� Measure twice, cut once: Custom controls

� It's a wrap

Page 3: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

3

XPages – A Big Leap Forward

� Visual Web page construction– Advanced U/I controls

– Drag and drop development

� Instant Application Development– XML markup with source

– Full control of HTML

– Business logic using JavaScript

– Presentation using CSS

– Skinning using themes

� Leverages existing NSF assets– Web agents, formulas, security,...

Page 4: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

4

XPages – What is it?

� A new Domino design element

� A runtime designed to generate modern Web applications

� Pure XML markup, defining:

– Controls, data sources, business logic, custom controls

� Solves age-old limitations expressed by the Domino community

– UI/Data separation, HTML generation control, server state, localization, extensibility …

– Capable of targeting multiple clients

� Highly extensible runtime and design time

� Standards-based technology: JSF

� Full integrated into Domino Designer 8.5

– Visual Design Page, Source Page, Control Palette, Outline View etc

Page 5: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

5

XPage Prerequisites

� Installation and configuration

– XPage runtime is installed by default

– If doing custom install, make sure its checked

– HTTP task must be running

� Skills

– Knowledge of Domino object model

– HTML, CSS, XML and JavaScript are very beneficial but you can built an application without them

– Question = Do I need to learn Java?

– Answer = NO!

Page 6: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

6

XPage Security

� XPages use agent security model.

� Settings for Xpage application access

– XPage signer must have explicitaccess to server or select userslisted in all trusted directories.

– Other settings which likely require XPage design elementsignature to be added

� XPage Web user access

– Standard Domino Web authentication applies

See Xpage User Guide: Designing with XPages \ Creating XPages \ Signing XPages

Page 7: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

7

Agenda

� XPage overview

� From palette to properties: Controls, Ajax & Localization

� Look and feel: CSS & Themes

� Where's the logic? Events, simple actions, JavaScript and more

� Measure twice, cut once: Custom controls

� It's a wrap

Page 8: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

8

XPages in Domino Designer 8.5

XPagedesign

element

Controlspalette

Custom Controlspalette

Outline Property sheets

Scripting & Simple Actions

Optional source mode

Page 9: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

9

XPage Controls

� Extensive palette of pre-built controls

– All the basic controls and containersexpected for developing Web 2.0 apps

� Two categories of controls

– Core – single entities used in XPage or custom control

– Container – more complex and contain other controls

� Extensible palette of controls

– Custom controls

– More on that later...

Page 10: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

XPage in 5 min Demo

Page 11: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

11

Built-In AJAX Support

� AJAX partial page refresh

– Available on any event

– Pre-built on View Pager

� AJAX Typeahead

– Add behavior to any edit control

– Content can be returned through a simple formula in the page• No need to write a separate service

� Dojo is provided as the client side library

– Will share some common controls with the “classic” Web applications

Page 12: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

Partial Update Demo

Page 13: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

13

CSS Support

� All look and feel is driven by CSS

– Enforce consistency between applications

– Help solving accessibility issues (Section 508 compliant)

� XPages feature global references to CSS files

� Style classes and inline styles can be applied per control

Page 14: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

14

CSS Skinning — Themes

� Allows an application to pick up a look and feel without touching the actual application code

– Default styles are applied to controls without any explicit style set per control – every property can be set

– Skinning can be disabled per application/control

– Association between control done through a “Theme”

– Defined at different levels: server or application• Stored in a shared database

– Easily customizable by a developer and/or an administrator

Page 15: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

Switch from this

Page 16: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

To This... In seconds, the flexibility and agility of “Themes”

Page 17: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

Apply Theme Demo

Page 18: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

18

Application Properties

� XPages tab

GZip supportLocalization

Page 19: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

Localization Demo

Page 20: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

20

Agenda

� XPage overview

� From palette to properties: Controls, Ajax & Localization

� Look and feel: CSS & Themes

� Where's the logic? Events, simple actions, JavaScript and more

� Measure twice, cut once: Custom controls

� It's a wrap

Page 21: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

21

Supported Languages� JavaScript

– On the Client

– On the Server

• Access to back-end classes, @function support• Global objects• Extended API for i18n, XPages data...• Server Side state: application scope, session scope & request scope

� Simple Actions

� Java

– Adding a Java class/library to an NSF

– JavaScript/Java bridge

– JSF managed beans – Using EL

Page 22: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

22

XPages Events Model

� XPages events

– Page events

– Control Events

– Data sources events

– Computed Properties – Data binding

� Server side JavaScript Libraries

� Validating data

– Validation can occur on the client and on the server

– The predefined validators

– Creating custom validators

Page 23: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

23

Leveraging Existing Business Logic

� Forms

– Default Values

– Validation Formulas

� Views

– The query engine

� Agents

– Calling an agent (LotusScript)

Page 24: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

24

Custom Controls

� Made by assembling existing controls

� Behave exactly as native controls

� Appear in the Control palette

� Define their own set of properties

– Hierarchical properties, with custom editors

– Editable areas

� Can be used

– As reusable UI assets (ex: an address control, a toolbar...)

– As a way to share some layout (ex: common page layout)

� Can be shared through templates (NTF) as any other design element

Page 25: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

25

Agenda

� XPage overview

� From palette to properties: Controls, Ajax & Localization

� Look and feel: CSS & Themes

� Where's the logic? Events, simple actions, JavaScript and more

� Measure twice, cut once: Custom controls

� It's a wrap

Page 26: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

26

XPage - Help

� Accessed from menu

� Two reference guides

F1 for contextsensitive help

Page 27: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

* 27

Resources� New XPage Tutorial

� Use instead of one in publicbetas kits

� Will ship with Designer

� Learning objectives� Set up and view an application

containing XPage elements

� Create an XPage

� Add controls to an XPage

� Bind data to an Xpage

� Add navigation to an Xpage

� Create a custom control

� Use advanced binding and scripting

� No need for server – use Designer preview in Web browser

Download new XPage Tutorial here

Page 28: A Closer Look at XPages in IBM Lotus Domino Designer 8 · PDF fileA Closer Look at XPages in IBM Lotus Domino Designer 8.5 ... Lotus software IBM Software Group ... Download new XPage

IBM Software Group | Lotus software

IBM Software Group | Lotus software

28

Resources Continued

� Discussion 8.5

– Coming soon to Lotus Greehouse

– https://greenhouse.lotus.com

� XPages articles and examples

– http://www.thenorth.com/northern.nsf/html/XpagesArticle

– http://www.jmackey.net/

– http://www.lotus911.com/nathan/escape.nsf/d6plinks/NTFN-7FRG79