SlideShare a Scribd company logo
1 of 34
Download to read offline
AD108: XPages in the IBM Lotus® Notes®
Client - A Deep Dive!
Martin Donnelly | Software Architect
Teresa Monahan | Software Developer
Before We Begin...
●   Please turn off:
     ▬ Pagers
     ▬ Cellphones
     ▬ Anything else that buzzes, sings, screams, beeps, chirps, barks, etc.
Financial Disclaimer
The information on the new product is intended to outline our general
product direction and it should not be relied on in making a purchasing
decision. The information on the new product is for informational purposes
only and may not be incorporated into any contract. The information on
the new product is not a commitment, promise, or legal obligation to
deliver any material, code or functionality. The development, release, and
timing of any features or functionality described for our products remains
at our sole discretion
Speaker Introductions

Martin Donnelly
●   Software Developer: Iris Associates / Lotus Development
     ▬   IBM Lotus® Domino® Designer V4.6 – V6.01, IBM Lotus® 1-2-3® for Unix®,
         LotusScript, etc.
●   Software Architect: IBM Software Group, Ireland
     ▬   IBM® Rational® Application Developer (RAD)
     ▬   JavaServer™ Faces (JSF) Tooling
     ▬   Eclipse Visual Editor
     ▬   IBM Lotus® Component Designer 6.0
     ▬   IBM Lotus® Domino® Designer 8.5 / IBM Lotus® Domino® XPages

Teresa Monahan
●   Software Developer: IBM Software Group, Ireland
     ▬   XPages in IBM Lotus® Notes® / IBM Lotus® Domino® 8.5
Agenda
●   Why XPages for the Notes Client?

●   How does XPages in the Notes Client work?

●   XPages & Notes Client Features and Functionality

●   Demos

●   XPages in the Notes Client - Summary

●   XPages in the Notes Client - Futures

●   Q&A




             5
XPages in the Notes Client *
     ●   Goals for 8.5.1
          ▬   Enable Lotus Notes/Domino users to run XPages web applications offline
               ▬ Deliver the same UI experience running locally in Notes client


               ▬ Take advantage of Notes/Domino NSF replication capabilities




          ▬   Support XPages in the Notes Client on all client platforms
               ▬ Windows®


               ▬ Mac


               ▬ LINUX®




          ▬   Innovate & Integrate where practical, e.g.
                ▬ Leverage the client composite application model


                ▬ Integrate with Notes client workspace features as makes sense




          ▬   Provide a secure runtime environment for XPages client applications

* XPages in the Notes Client aka XPiNC

                        6
XPages in the Notes Client
   ●   How it works – pretty much the same as on the server ;-)


                                    Notes Client                                      XPages requests sent to
                                                                                      an embedded Java Web
                                                                     Web Container    container
       Embedded XULRunner

                                                                                      The XPages runtime
        XPages UI Container
                                                                                      inserts as a generic web
                                                                     XPages Runtime
                                                                                      module and provides a
                                                                                      virtual container for NSFs

                                                                                      Each NSF can be
In Short
                                                                                      projected as an auto-
 NSF apps have a new XPages client launch option
When app is opened, this URL is passed to XPages client container                    deployed Web Module.
The container further transforms the URL ...
      •Creates a instance of the XULRunner browser                                    NSF design elements
      •Sends a secure request to client web container                                 (XSP, Java™ class files…)
The web container routes all XSP requests to the XPages runtime                      are made available as
XPages runtime renders pages back to the XULRunner browser                           module resources to the
                                                                                      servlet API.



                      7
Launching XPages in the Notes Client
●   Launch Properties can be set in both Lotus Notes and Lotus Domino
    Designer

Notes Client:



                                     Lotus Domino Designer:




                8
The XPages Client URL
●   Built dynamically when an XPages application is invoked
     ▬   Based on the Client launch properties
●   Syntax: notes://[server]/dbName.nsf/myPage.xsp?OpenXPage
●   Client Address Bar:




●   Opening XPages from other Lotus Notes applications
●   Integration with other design elements (e.g. Forms)
●   Bookmarking / Failover




                 9
Execution Modes
●   Local
     ▬   NSF is in local data folder or sub-directory
     ▬   All data and resources are loaded locally and executed in local web
         container

●   Remote
     ▬   NSF resides on a Lotus Domino server
     ▬   Data and resources are loaded across a network
     ▬   Application logic is executed in the local web container
     ▬   No XPages code executes on the server

●   Consistent with the existing client model



                10
Customization of XPages in Notes
●   Rich Client Platform Specific Properties
●   Native Platform Dialogs
●   Client Themes
     ▬   Ability to customize application user experience for the Notes Client
●   XPages Toolbar
     ▬   Navigation, Clear Cache / Refresh Page, View Source, Print / Page Setup
●   enableModifiedFlag
     ▬   Prompt to save any modified content
●   Bookmarking XPages
●   Failover Support



                11
Customization of XPages in Notes
●   SWT Dialogs instead of JavaScript™ Alert / Confirm Dialogs


    Web                             Notes Client




●   Client Side JavaScript Access to Java Platform Services
          ▬ XSP.Alert() XSP.Xxx();


          ▬ XSP._NotPublished();




             12
Customization of XPages in Notes
●   Rich Client Platform Specific Properties
     ▬   Provide a different user experience in Web and in Notes
     ▬   In Notes, analogous to traditional 'hide/when' functionality

●   e.g. Discussion Template 8.5.1 Toolbar

          <xp:label value="Welcome " id="labelWelcome">
              <xp:label.rcp rendered="false"></xp:label.rcp>
          </xp:label>
          <xp:text escape="true" id="cfUserName" value="..">
              <xp:text.rcp rendered="false"></xp:text.rcp>
          </xp:text>




               13
enableModifiedFlag
 ●   Integrated with Notes Client document save model
      ▬   Main Save menu sensitive to modified document content
      ▬   Hooks explicit File Save / {Ctl}{S} operations
 ●   Alerts user to unsaved content on certain events
      ▬   <Esc> / Close Window
      ▬   Navigation to other page (client + web)
 ●   Applying enableModifiedFlag
      ▬   Can be applied to any input control
      ▬   Default setting overrides the need to specify behavior in many places
      ▬   disableModifiedFlag flag allows an input control to explicitly “opt out” of the process
 ●   Handles client side and server side validation scenarios
      ▬   Client side JavaScript reports an error before save can be performed
      ▬   Server side validator finds an error after the page is submitted


                 14
XPages Client Theme
●   Support for Client Themes
     ▬   Different look and feel when applications are used in the Notes Client
●   8.5.1 Application Properties panel extended
     ▬   Allow property setting for Application, Web and Client Themes
●   No “Out of the Box” Client Theme for 8.5.1




                 15
XPiNC Demo




16
XPages & Composite Applications
●   Full integration with Composite Applications in 8.5.1
     ▬   Comp App supports XPages applications and XPages Components
●   Component
     ▬   A new 8.5.1 Component design element
     ▬   Define Publish & Receive Events for interaction with other components
     ▬   Define Parameters to conditionalize component behavior
     ▬   Uses iWidget format
●   Wire XPages components together or with other components
     ▬   PIM (mail),
     ▬   Managed Browser
     ▬   Symphony Containers
     ▬   Widgets...
●   New XPages Simple Actions to easily handle Publish Events
●   Receive Events handled with JavaScript


                       17
XPages in Composite Applications Editor
 ●   Adding an XPages Application/Component to a Composite Application
      ▬   Easy peasy – select Notes URL via the design element picker or just specify manually




                       18
XPages in Composite Applications
                       XPages Discussion
                          Component




                                           Google
                                           Widget


     Notes Mail View

         19
XPages Comp App Demo




How to use XPages in a Composite Application
Online video available on developer.lotus.com
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/XPage_Components_in_Notes_851_Videos.htm

                   20
Client      Web
XPiNC Testing / Debugging                            Preview     Preview


●   Lotus Domino Designer Preview
●   XPages Client Toolbar
     ▬   View Source
                                          Cache
                                                        View Source   View Config
     ▬   Clear Private Data / Refresh   Management
     ▬   View Browser Configuration
●   Error Logging
     ▬   <NOTES_INSTALL_DIR>/data/IBM_TECHNICAL_SUPPORT
     ▬   Help > Support > View Trace
     ▬   Help > Support > View Log




                    21
XPiNC Testing / Debugging
 ●   ClientSide JavaScript Error Reporting:
      ▬   In Notes status bar
      ▬   Enable Firebug® Lite
            ▬   Rename xsp.properties.sample in <NotesData>/properties to
                xsp.properties
            ▬   Comment in the line: xsp.client.script.dojo.djConfig=isDebug:true
            ▬   Restart the Notes Client.
 ●   ServerSide JavaScript Error Reporting:
      ▬   Append -RPARAMS -console to the shortcut that launches Notes
          e.g. C:Notesnotes.exe -RPARAMS -console
      ▬   Notes Client will launch with a console window
      ▬   print() and _dump() statements output to the console



                     22
All Permissions
Security                                              Properties          Network

                                                                   File
●   Java Security Key Objective
     ▬ Prevent an XPages Application from executing Java code that could
       read data from the users workstation and transmit it to a remote host
       over the network.
●   XPages Java Security Manager integrated with the Notes Execution
    Control List (ECL) service
●   Notes Client “Execution Security Alert” dialog used to warn a user when
    code in an XPages application executes a protected operation
●   User can:
     ▬ Deny the action
     ▬ Trust it one time only
     ▬ Modify the ECL so that it will always be a trusted action




             23
Security
●   Java backend classes security correctly surfaced in XPiNC
●   Client Side JavaScript Access to Java Platform Services
     ▬  Limited client platform services available via client side JavaScript
          ▬ Mostly UI functions like dialog rendering

●   Session IDs
     ▬  Assigned when an application is opened using XPages
     ▬  Persists until the Notes Tab is closed
●   Port Number in XPages URL
     ▬  Randomly generated when Notes Client is launched
     ▬  Persists until the Notes Client is closed




              24
Debug & Security Demo




25
Future Directions
●   We have started to address some of these points in 8.5.x




     The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for
     informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or
     functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion



                                      26
Client Consistent Behaviors
        ●   Enabling appropriate Menu items
               ▬      File  Replicate, Open in Designer etc




8.5.1                                                                                                                                                                                   8.5.x




    The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for
    informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or
    functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion



                                     27
Link Handling & Document Interoperability
 ●   Domino web links / Notes client links
       ▬     XPages uses MIME format when storing documents on the web and client
                  ▬    No web/client interoperabiltiy issues for pure XPages apps
       ▬     Traditional Notes applications use a native CD binary format for rich text
                  ▬    Native rich text document must undergo a conversion for XPages to display
                  ▬    Happens automatically in 8.5.1
       ▬     CD / MIME conversions can be lossy on certain content types
                  ▬    Can occur when users are using regular Notes client & XPiNC on same app
                  ▬    Same scenario as when Notes client apps also serve as Domino web apps
                  ▬    User is warned of potential format loss if writing a document that requires conversion
       ▬     8.5.x aims for better round-tripping of rich text documents



Links in Traditional Notes App                                                                 Same links when viewed in XPiNC




     The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for
     informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or
     functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion



                                      28
Window Management Client Behaviors
●   Window Management
      ▬      Lift single-window restriction on XPages client applications
                 ▬  e.g. Allow documents to be opened in new window like traditional Notes client apps
      ▬      Dictate behavior by preference settings
      ▬      Leverage existing client preferences
      ▬      Enable this option for
               ▬  Links
               ▬  Page navigations
               ▬  View column selections




    The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for
    informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or
    functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion



                                     29
Summary
●   Walk through of XPages in the Notes Client
     ▬   Launching XPages in the Notes Client
     ▬   Local / Remote modes
●   Customization of XPages in the Notes Client
     ▬   RCP Specific Properties
     ▬   Client Themes
     ▬   Native Dialogs
●   Notes Integration Points
     ▬   Bookmarking XPages
     ▬   enableModifiedFlag
     ▬   XPages Toolbar
     ▬   Enhanced Menu Integration (File Replicate etc)
●   Composite Application Integration
●   Test / Debug Utilities
●   Security
●   Possible Future Directions for XPiNC


                    30
Resources
●   Developer Works
     developer.lotus.com
●   Lotus Domino Designer wiki
     www.lotus.com/ldd/ddwiki.nsf
●   Domino Designer Help
●   Open NTF – Project: XPages Wiki
     www.openntf.org
●   Planet Lotus - an aggregation of Lotus related blogs and news
     planetlotus.org
●   THE VIEW
     www.eview.com
●   The XPages Blog
     xpagesblog.com




                 31
Other XPages Sessions...
JMP101 IBM Lotus Domino Designer 101 - Dan O'Connor and Ishfak Bhagat
AD101 IBM Lotus Domino Designer: Full Speed Ahead! - Maureen Leland and Peter Janzen
AD102 Extreme Makeover -- LotusScript and Java Editor Edition - David Taieb and Santosh Kumar
AD103 Have it Your Way: Extending IBM Lotus Domino Designer - Andre Guirard and Xin Rang Wang
AD106 XPages Just Keep Getting Better - Philippe Riand and Eamon Muldoon
AD107 Enhance Your Existing Applications with XPages - Steve Castledine and Stephan Wissel
AD109 XPages Performance and Scalability - Mark Gargan and Tony McGuckin
AD110 Unleash the Power of Xpages - Philippe Riand and Maire Kehoe
AD111 Harnessing the Power of Server-Side JavaScript and Other Advanced XPage Techniques - Tim
   Tripcony and Stephan Wissel
AD112 Development and Deployment of Lotus Product Documentation Wikis - Craig Lordan and Kevin
   Giles
AD113 IBM Lotus Notes Discussion Template: Next Generation and Other OpenNTF Assets - Niklas
   Heidloff and Steve Castledine
BP207 Make Your XPage Apps "Pop!" with CSS and Themes - Declan Lynch and David Leedy
SHOW112 How to Build an XPages Application from Start to Finish - Tim Clark and Matt White


Security in IBM Lotus Notes Client
ID105 What's New in IBM Lotus Notes Client Security - Srinivas Kolaparthi and John Banks-Binici




                 32
Questions




  ●   Your turn -- contact information:
       ▬ Martin Donnelly, martin_donnelly@ie.ibm.com
       ▬ Teresa Monahan, monahant@ie.ibm.com


                33
Legal Disclaimer
© IBM Corporation 2009. All Rights Reserved.
The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is
provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall
not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of,
creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this
presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way.
Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.


IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.

Other company, product, or service names may be trademarks or service marks of others.




                                               34

More Related Content

What's hot

What's hot (20)

USENIX LISA11 Tutorial: ZFS a
USENIX LISA11 Tutorial: ZFS a USENIX LISA11 Tutorial: ZFS a
USENIX LISA11 Tutorial: ZFS a
 
ビュー索引のキホン(前編)
ビュー索引のキホン(前編)ビュー索引のキホン(前編)
ビュー索引のキホン(前編)
 
InnoDB MVCC Architecture (by 권건우)
InnoDB MVCC Architecture (by 권건우)InnoDB MVCC Architecture (by 권건우)
InnoDB MVCC Architecture (by 권건우)
 
dominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptxdominocamp2022.t1s1.dde.pptx
dominocamp2022.t1s1.dde.pptx
 
[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless mode[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless mode
 
JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
Fluentd with MySQL
Fluentd with MySQLFluentd with MySQL
Fluentd with MySQL
 
June OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification ManagerJune OpenNTF Webinar - Domino V12 Certification Manager
June OpenNTF Webinar - Domino V12 Certification Manager
 
Important tips on Router and SMTP mail routing
Important tips on Router and SMTP mail routingImportant tips on Router and SMTP mail routing
Important tips on Router and SMTP mail routing
 
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best PracticesApril, 2021 OpenNTF Webinar - Domino Administration Best Practices
April, 2021 OpenNTF Webinar - Domino Administration Best Practices
 
HDFS Trunncate: Evolving Beyond Write-Once Semantics
HDFS Trunncate: Evolving Beyond Write-Once SemanticsHDFS Trunncate: Evolving Beyond Write-Once Semantics
HDFS Trunncate: Evolving Beyond Write-Once Semantics
 
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for DominoJuly OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
 
HCL Notes and Nomad Troubleshooting for Dummies
HCL Notes and Nomad Troubleshooting for DummiesHCL Notes and Nomad Troubleshooting for Dummies
HCL Notes and Nomad Troubleshooting for Dummies
 
Best practices for ansible
Best practices for ansibleBest practices for ansible
Best practices for ansible
 
Windows 2019
Windows 2019Windows 2019
Windows 2019
 
JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6JBoss AS / EAP and Java EE6
JBoss AS / EAP and Java EE6
 
IBM Domino / IBM Notes Performance Tuning
IBM Domino / IBM Notes Performance Tuning IBM Domino / IBM Notes Performance Tuning
IBM Domino / IBM Notes Performance Tuning
 
PostgreSQL 공간관리 살펴보기 이근오
PostgreSQL 공간관리 살펴보기 이근오PostgreSQL 공간관리 살펴보기 이근오
PostgreSQL 공간관리 살펴보기 이근오
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
 

Similar to Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!

We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT Group
 
XPages Extension Library slides
XPages Extension Library   slidesXPages Extension Library   slides
XPages Extension Library slides
Niklas Heidloff
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT Group
 
Intro to XPages for Administrators (DanNotes, November 28, 2012)
Intro to XPages for Administrators (DanNotes, November 28, 2012)Intro to XPages for Administrators (DanNotes, November 28, 2012)
Intro to XPages for Administrators (DanNotes, November 28, 2012)
Per Henrik Lausten
 
Domino OSGi Development
Domino OSGi DevelopmentDomino OSGi Development
Domino OSGi Development
Paul Fiore
 
Diff between win runner vs and qtp
Diff between win runner vs and qtpDiff between win runner vs and qtp
Diff between win runner vs and qtp
Ramu Palanki
 

Similar to Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive! (20)

We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
 
XPages Extension Library slides
XPages Extension Library   slidesXPages Extension Library   slides
XPages Extension Library slides
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
 
Intro to XPages for Administrators (DanNotes, November 28, 2012)
Intro to XPages for Administrators (DanNotes, November 28, 2012)Intro to XPages for Administrators (DanNotes, November 28, 2012)
Intro to XPages for Administrators (DanNotes, November 28, 2012)
 
Ad106 - XPages Just Keep Getting Better
Ad106 - XPages Just Keep Getting BetterAd106 - XPages Just Keep Getting Better
Ad106 - XPages Just Keep Getting Better
 
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1What’s new for Developers in IBM Domino & Domino Designer 9.0.1
What’s new for Developers in IBM Domino & Domino Designer 9.0.1
 
Domino X Pages 8.5
Domino X Pages 8.5Domino X Pages 8.5
Domino X Pages 8.5
 
Developing XPages Applications
Developing XPages ApplicationsDeveloping XPages Applications
Developing XPages Applications
 
Ad109 - XPages Performance and Scalability
Ad109 - XPages Performance and ScalabilityAd109 - XPages Performance and Scalability
Ad109 - XPages Performance and Scalability
 
Domino OSGi Development
Domino OSGi DevelopmentDomino OSGi Development
Domino OSGi Development
 
Ad111
Ad111Ad111
Ad111
 
AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...
AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...
AD111 -- Harnessing the Power of Server-Side JavaScript and Other Advanced XP...
 
Ad107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPagesAd107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPages
 
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
 
Applying microservices principles to front end
Applying microservices principles to front endApplying microservices principles to front end
Applying microservices principles to front end
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
 
Azure functions: from a function to a whole application in 60 minutes
Azure functions: from a function to a whole application in 60 minutesAzure functions: from a function to a whole application in 60 minutes
Azure functions: from a function to a whole application in 60 minutes
 
Diff between win runner vs and qtp
Diff between win runner vs and qtpDiff between win runner vs and qtp
Diff between win runner vs and qtp
 
Tech Talk Comp Apps851 20090930
Tech Talk Comp Apps851 20090930Tech Talk Comp Apps851 20090930
Tech Talk Comp Apps851 20090930
 
GCP overview
GCP overviewGCP overview
GCP overview
 

More from ddrschiw

Traveler preview guide
Traveler preview guideTraveler preview guide
Traveler preview guide
ddrschiw
 
Traveler preview guide
Traveler preview guideTraveler preview guide
Traveler preview guide
ddrschiw
 

More from ddrschiw (17)

Traveler preview guide
Traveler preview guideTraveler preview guide
Traveler preview guide
 
Traveler preview guide
Traveler preview guideTraveler preview guide
Traveler preview guide
 
AD113 -- IBM Lotus Notes Discussion Template: Next Generation and Other OpenN...
AD113 -- IBM Lotus Notes Discussion Template: Next Generation and Other OpenN...AD113 -- IBM Lotus Notes Discussion Template: Next Generation and Other OpenN...
AD113 -- IBM Lotus Notes Discussion Template: Next Generation and Other OpenN...
 
AD112 -- Development and Deployment of Lotus Product Documentation Wikis
AD112 -- Development and Deployment of Lotus Product Documentation WikisAD112 -- Development and Deployment of Lotus Product Documentation Wikis
AD112 -- Development and Deployment of Lotus Product Documentation Wikis
 
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
AD114 -- Beyond the Mobile Browser? Building Rich Mobile Applications for IBM...
 
Ad103 - Have it Your Way: Extending IBM Lotus Domino Designer
Ad103 - Have it Your Way: Extending IBM Lotus Domino DesignerAd103 - Have it Your Way: Extending IBM Lotus Domino Designer
Ad103 - Have it Your Way: Extending IBM Lotus Domino Designer
 
Ad102 - Extreme Makeover -- LotusScript and Java Editor Edition
Ad102 - Extreme Makeover -- LotusScript and Java Editor EditionAd102 - Extreme Makeover -- LotusScript and Java Editor Edition
Ad102 - Extreme Makeover -- LotusScript and Java Editor Edition
 
Ad110 - Unleash the Power of Xpages
Ad110 - Unleash the Power of XpagesAd110 - Unleash the Power of Xpages
Ad110 - Unleash the Power of Xpages
 
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
LotusSphere 2010 - Leveraging IBM Lotus® Forms™ with IBM WebSphere® Process S...
 
Webform Server 351 Architecture and Overview
Webform Server 351 Architecture and OverviewWebform Server 351 Architecture and Overview
Webform Server 351 Architecture and Overview
 
Introduction To IBM Lotus Forms Viewer
Introduction To IBM Lotus Forms ViewerIntroduction To IBM Lotus Forms Viewer
Introduction To IBM Lotus Forms Viewer
 
XPages Workshop: Concepts And Exercises
XPages Workshop:   Concepts And ExercisesXPages Workshop:   Concepts And Exercises
XPages Workshop: Concepts And Exercises
 
Building A Cool Web 2.0 Application With XPages
Building A Cool Web 2.0 Application With XPagesBuilding A Cool Web 2.0 Application With XPages
Building A Cool Web 2.0 Application With XPages
 
Domino X Pages
Domino X PagesDomino X Pages
Domino X Pages
 
Mlb Demo1
Mlb Demo1Mlb Demo1
Mlb Demo1
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architecture
 
Lotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & ArchitectureLotus Forms Webform Server 3.0 Overview & Architecture
Lotus Forms Webform Server 3.0 Overview & Architecture
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!

  • 1. AD108: XPages in the IBM Lotus® Notes® Client - A Deep Dive! Martin Donnelly | Software Architect Teresa Monahan | Software Developer
  • 2. Before We Begin... ● Please turn off: ▬ Pagers ▬ Cellphones ▬ Anything else that buzzes, sings, screams, beeps, chirps, barks, etc.
  • 3. Financial Disclaimer The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion
  • 4. Speaker Introductions Martin Donnelly ● Software Developer: Iris Associates / Lotus Development ▬ IBM Lotus® Domino® Designer V4.6 – V6.01, IBM Lotus® 1-2-3® for Unix®, LotusScript, etc. ● Software Architect: IBM Software Group, Ireland ▬ IBM® Rational® Application Developer (RAD) ▬ JavaServer™ Faces (JSF) Tooling ▬ Eclipse Visual Editor ▬ IBM Lotus® Component Designer 6.0 ▬ IBM Lotus® Domino® Designer 8.5 / IBM Lotus® Domino® XPages Teresa Monahan ● Software Developer: IBM Software Group, Ireland ▬ XPages in IBM Lotus® Notes® / IBM Lotus® Domino® 8.5
  • 5. Agenda ● Why XPages for the Notes Client? ● How does XPages in the Notes Client work? ● XPages & Notes Client Features and Functionality ● Demos ● XPages in the Notes Client - Summary ● XPages in the Notes Client - Futures ● Q&A 5
  • 6. XPages in the Notes Client * ● Goals for 8.5.1 ▬ Enable Lotus Notes/Domino users to run XPages web applications offline ▬ Deliver the same UI experience running locally in Notes client ▬ Take advantage of Notes/Domino NSF replication capabilities ▬ Support XPages in the Notes Client on all client platforms ▬ Windows® ▬ Mac ▬ LINUX® ▬ Innovate & Integrate where practical, e.g. ▬ Leverage the client composite application model ▬ Integrate with Notes client workspace features as makes sense ▬ Provide a secure runtime environment for XPages client applications * XPages in the Notes Client aka XPiNC 6
  • 7. XPages in the Notes Client ● How it works – pretty much the same as on the server ;-) Notes Client XPages requests sent to an embedded Java Web Web Container container Embedded XULRunner The XPages runtime XPages UI Container inserts as a generic web XPages Runtime module and provides a virtual container for NSFs Each NSF can be In Short projected as an auto-  NSF apps have a new XPages client launch option When app is opened, this URL is passed to XPages client container deployed Web Module. The container further transforms the URL ... •Creates a instance of the XULRunner browser NSF design elements •Sends a secure request to client web container (XSP, Java™ class files…) The web container routes all XSP requests to the XPages runtime are made available as XPages runtime renders pages back to the XULRunner browser module resources to the servlet API. 7
  • 8. Launching XPages in the Notes Client ● Launch Properties can be set in both Lotus Notes and Lotus Domino Designer Notes Client: Lotus Domino Designer: 8
  • 9. The XPages Client URL ● Built dynamically when an XPages application is invoked ▬ Based on the Client launch properties ● Syntax: notes://[server]/dbName.nsf/myPage.xsp?OpenXPage ● Client Address Bar: ● Opening XPages from other Lotus Notes applications ● Integration with other design elements (e.g. Forms) ● Bookmarking / Failover 9
  • 10. Execution Modes ● Local ▬ NSF is in local data folder or sub-directory ▬ All data and resources are loaded locally and executed in local web container ● Remote ▬ NSF resides on a Lotus Domino server ▬ Data and resources are loaded across a network ▬ Application logic is executed in the local web container ▬ No XPages code executes on the server ● Consistent with the existing client model 10
  • 11. Customization of XPages in Notes ● Rich Client Platform Specific Properties ● Native Platform Dialogs ● Client Themes ▬ Ability to customize application user experience for the Notes Client ● XPages Toolbar ▬ Navigation, Clear Cache / Refresh Page, View Source, Print / Page Setup ● enableModifiedFlag ▬ Prompt to save any modified content ● Bookmarking XPages ● Failover Support 11
  • 12. Customization of XPages in Notes ● SWT Dialogs instead of JavaScript™ Alert / Confirm Dialogs Web Notes Client ● Client Side JavaScript Access to Java Platform Services ▬ XSP.Alert() XSP.Xxx(); ▬ XSP._NotPublished(); 12
  • 13. Customization of XPages in Notes ● Rich Client Platform Specific Properties ▬ Provide a different user experience in Web and in Notes ▬ In Notes, analogous to traditional 'hide/when' functionality ● e.g. Discussion Template 8.5.1 Toolbar <xp:label value="Welcome " id="labelWelcome"> <xp:label.rcp rendered="false"></xp:label.rcp> </xp:label> <xp:text escape="true" id="cfUserName" value=".."> <xp:text.rcp rendered="false"></xp:text.rcp> </xp:text> 13
  • 14. enableModifiedFlag ● Integrated with Notes Client document save model ▬ Main Save menu sensitive to modified document content ▬ Hooks explicit File Save / {Ctl}{S} operations ● Alerts user to unsaved content on certain events ▬ <Esc> / Close Window ▬ Navigation to other page (client + web) ● Applying enableModifiedFlag ▬ Can be applied to any input control ▬ Default setting overrides the need to specify behavior in many places ▬ disableModifiedFlag flag allows an input control to explicitly “opt out” of the process ● Handles client side and server side validation scenarios ▬ Client side JavaScript reports an error before save can be performed ▬ Server side validator finds an error after the page is submitted 14
  • 15. XPages Client Theme ● Support for Client Themes ▬ Different look and feel when applications are used in the Notes Client ● 8.5.1 Application Properties panel extended ▬ Allow property setting for Application, Web and Client Themes ● No “Out of the Box” Client Theme for 8.5.1 15
  • 17. XPages & Composite Applications ● Full integration with Composite Applications in 8.5.1 ▬ Comp App supports XPages applications and XPages Components ● Component ▬ A new 8.5.1 Component design element ▬ Define Publish & Receive Events for interaction with other components ▬ Define Parameters to conditionalize component behavior ▬ Uses iWidget format ● Wire XPages components together or with other components ▬ PIM (mail), ▬ Managed Browser ▬ Symphony Containers ▬ Widgets... ● New XPages Simple Actions to easily handle Publish Events ● Receive Events handled with JavaScript 17
  • 18. XPages in Composite Applications Editor ● Adding an XPages Application/Component to a Composite Application ▬ Easy peasy – select Notes URL via the design element picker or just specify manually 18
  • 19. XPages in Composite Applications XPages Discussion Component Google Widget Notes Mail View 19
  • 20. XPages Comp App Demo How to use XPages in a Composite Application Online video available on developer.lotus.com http://www-10.lotus.com/ldd/ddwiki.nsf/dx/XPage_Components_in_Notes_851_Videos.htm 20
  • 21. Client Web XPiNC Testing / Debugging Preview Preview ● Lotus Domino Designer Preview ● XPages Client Toolbar ▬ View Source Cache View Source View Config ▬ Clear Private Data / Refresh Management ▬ View Browser Configuration ● Error Logging ▬ <NOTES_INSTALL_DIR>/data/IBM_TECHNICAL_SUPPORT ▬ Help > Support > View Trace ▬ Help > Support > View Log 21
  • 22. XPiNC Testing / Debugging ● ClientSide JavaScript Error Reporting: ▬ In Notes status bar ▬ Enable Firebug® Lite ▬ Rename xsp.properties.sample in <NotesData>/properties to xsp.properties ▬ Comment in the line: xsp.client.script.dojo.djConfig=isDebug:true ▬ Restart the Notes Client. ● ServerSide JavaScript Error Reporting: ▬ Append -RPARAMS -console to the shortcut that launches Notes e.g. C:Notesnotes.exe -RPARAMS -console ▬ Notes Client will launch with a console window ▬ print() and _dump() statements output to the console 22
  • 23. All Permissions Security Properties Network File ● Java Security Key Objective ▬ Prevent an XPages Application from executing Java code that could read data from the users workstation and transmit it to a remote host over the network. ● XPages Java Security Manager integrated with the Notes Execution Control List (ECL) service ● Notes Client “Execution Security Alert” dialog used to warn a user when code in an XPages application executes a protected operation ● User can: ▬ Deny the action ▬ Trust it one time only ▬ Modify the ECL so that it will always be a trusted action 23
  • 24. Security ● Java backend classes security correctly surfaced in XPiNC ● Client Side JavaScript Access to Java Platform Services ▬ Limited client platform services available via client side JavaScript ▬ Mostly UI functions like dialog rendering ● Session IDs ▬ Assigned when an application is opened using XPages ▬ Persists until the Notes Tab is closed ● Port Number in XPages URL ▬ Randomly generated when Notes Client is launched ▬ Persists until the Notes Client is closed 24
  • 25. Debug & Security Demo 25
  • 26. Future Directions ● We have started to address some of these points in 8.5.x The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion 26
  • 27. Client Consistent Behaviors ● Enabling appropriate Menu items ▬ File Replicate, Open in Designer etc 8.5.1 8.5.x The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion 27
  • 28. Link Handling & Document Interoperability ● Domino web links / Notes client links ▬ XPages uses MIME format when storing documents on the web and client ▬ No web/client interoperabiltiy issues for pure XPages apps ▬ Traditional Notes applications use a native CD binary format for rich text ▬ Native rich text document must undergo a conversion for XPages to display ▬ Happens automatically in 8.5.1 ▬ CD / MIME conversions can be lossy on certain content types ▬ Can occur when users are using regular Notes client & XPiNC on same app ▬ Same scenario as when Notes client apps also serve as Domino web apps ▬ User is warned of potential format loss if writing a document that requires conversion ▬ 8.5.x aims for better round-tripping of rich text documents Links in Traditional Notes App Same links when viewed in XPiNC The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion 28
  • 29. Window Management Client Behaviors ● Window Management ▬ Lift single-window restriction on XPages client applications ▬ e.g. Allow documents to be opened in new window like traditional Notes client apps ▬ Dictate behavior by preference settings ▬ Leverage existing client preferences ▬ Enable this option for ▬ Links ▬ Page navigations ▬ View column selections The information on the new product is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information on the new product is for informational purposes only and may not be incorporated into any contract. The information on the new product is not a commitment, promise, or legal obligation to deliver any material, code or functionality. The development, release, and timing of any features or functionality described for our products remains at our sole discretion 29
  • 30. Summary ● Walk through of XPages in the Notes Client ▬ Launching XPages in the Notes Client ▬ Local / Remote modes ● Customization of XPages in the Notes Client ▬ RCP Specific Properties ▬ Client Themes ▬ Native Dialogs ● Notes Integration Points ▬ Bookmarking XPages ▬ enableModifiedFlag ▬ XPages Toolbar ▬ Enhanced Menu Integration (File Replicate etc) ● Composite Application Integration ● Test / Debug Utilities ● Security ● Possible Future Directions for XPiNC 30
  • 31. Resources ● Developer Works developer.lotus.com ● Lotus Domino Designer wiki www.lotus.com/ldd/ddwiki.nsf ● Domino Designer Help ● Open NTF – Project: XPages Wiki www.openntf.org ● Planet Lotus - an aggregation of Lotus related blogs and news planetlotus.org ● THE VIEW www.eview.com ● The XPages Blog xpagesblog.com 31
  • 32. Other XPages Sessions... JMP101 IBM Lotus Domino Designer 101 - Dan O'Connor and Ishfak Bhagat AD101 IBM Lotus Domino Designer: Full Speed Ahead! - Maureen Leland and Peter Janzen AD102 Extreme Makeover -- LotusScript and Java Editor Edition - David Taieb and Santosh Kumar AD103 Have it Your Way: Extending IBM Lotus Domino Designer - Andre Guirard and Xin Rang Wang AD106 XPages Just Keep Getting Better - Philippe Riand and Eamon Muldoon AD107 Enhance Your Existing Applications with XPages - Steve Castledine and Stephan Wissel AD109 XPages Performance and Scalability - Mark Gargan and Tony McGuckin AD110 Unleash the Power of Xpages - Philippe Riand and Maire Kehoe AD111 Harnessing the Power of Server-Side JavaScript and Other Advanced XPage Techniques - Tim Tripcony and Stephan Wissel AD112 Development and Deployment of Lotus Product Documentation Wikis - Craig Lordan and Kevin Giles AD113 IBM Lotus Notes Discussion Template: Next Generation and Other OpenNTF Assets - Niklas Heidloff and Steve Castledine BP207 Make Your XPage Apps "Pop!" with CSS and Themes - Declan Lynch and David Leedy SHOW112 How to Build an XPages Application from Start to Finish - Tim Clark and Matt White Security in IBM Lotus Notes Client ID105 What's New in IBM Lotus Notes Client Security - Srinivas Kolaparthi and John Banks-Binici 32
  • 33. Questions ● Your turn -- contact information: ▬ Martin Donnelly, martin_donnelly@ie.ibm.com ▬ Teresa Monahan, monahant@ie.ibm.com 33
  • 34. Legal Disclaimer © IBM Corporation 2009. All Rights Reserved. The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others. 34