What's new for Developers in
IBM Domino & Domino Designer 9.0.1

November 6, 2013
Martin Donnelly, Tony McGuckin,
Padraic Edwards, Jonathan Roche
Next Webinar

●

●

2

Tentatively December: SmartCloud for Social Business Extensibility
Recordings: YouTube.com/ibmsbt

© 2013 IBM Corporation
Disclaimers
IBM’s statements regarding its plans, directions, and intent are subject to change or
withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general product
direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a commitment,
promise, or legal obligation to deliver any material, code or functionality. Information about
potential future products may not be incorporated into any contract. The development,
release, and timing of any future features or functionality described for our products remains
at our sole discretion.
Performance is based on measurements and projections using standard IBM benchmarks in
a controlled environment. The actual throughput or performance that any user will
experience will vary depending upon many factors, including considerations such as the
amount of multiprogramming in the user’s job stream, the I/O configuration, the storage
configuration, and the workload processed. Therefore, no assurance can be given that an
individual user will achieve results similar to those stated here.
Agenda
●

Miscellaneous Updates
●
Technology refresh
●
Accessibility
●
High Performance View Navigator
●
Dynamic Search Improvements

●

●

Social SDK Integration

●

Domino Designer

●

4

XPages Mobile

Programmability

© 2013 IBM Corporation
Technology Updates
●

Dojo upgrade to 1.8.3

●

CKEditor Upgrade to 3.6.6.2

●

●

5

XULRunner Upgrade to 10.0.6 (XPiNC)
●
Equivalent of upgrading Notes embedded browser from Firefox 3.6.2 to 10.0.6
Commons Logging Upgrade to V1.1.2
●
Unblocks long-standing issues re XPages apps using other jars shipped with Domino
(e.g. Axis)
●
Makes it easier to consume web services
●
xsp.depend.org.apache.axis=true

© 2013 IBM Corporation
Accessibility

●

●

6

Compliant to the Latest IBM Web Accessibility Checklist
●
W3C Web Content Accessibility Guidelines (WCAG) 2.0 Level A / AA
●
US Section 508 Standard (Requirement of US Government)
●
XPages Runtime
●
XPages in the Notes Client
●
Discussion / Teamroom Templates
●
Updated documentation
Scope
●
Total of ~400 accessibility issues
●
Over ~150 fixes required due to direct non-compliance / standard
violations

© 2013 IBM Corporation
High Performance View Navigator
●

Alternative XPages View Navigator in 9.0.1
●
Performs well with heavily populated view categories
●
Based on new 9.0 Java APIs backend classes and NIF capabilities
●
View navigation is based on document note ids rather than view
position
●
View behavior closely emulates Notes client
●
Enabled via an xsp.properties setting
●
xsp.domino.view.navigator=ByPosition
●
xsp.domino.view.navigator=ByNoteId
View markup by note id

7

View markup by position

© 2013 IBM Corporation
XPages Dynamic Search – Real Users vs. SpiderBots

●

XPages Dynamic Content Control
●

Dynamically switches content into an XPage using Ajax hash tag processing techniques

●

This works well for real users … but not so well for robots !

●

Bots or Crawlers read a web page to index its content for search engines
●

●

9.0.1 Improvements
●

●
●
●

8

The bots cannot execute the Ajax JS code and thus fail to reach and index any content

On the 1st page request in a given XPages session
●
The runtime figures out if the page is loaded by a Bot
●
Dynamic Content Control can then adapts its markup for Bots or real users
●
For normal users, nothing changes except the analysis of the first page request in the session
●
For bots, the '#' tags are replaced by '&', effectively avoiding Ajax requests
Several popular bots are supported by default
Designer allows your customize your bot support
Runtime now loads default facet on initial page load

© 2013 IBM Corporation
XPages Mobile
●

XPages 9.0.1 Mobile Goals
●
●
●
●
●
●

Support for Dojo 1.8.3
Improve mobile “look and feel”
Introduce new JavaScript mobile APIs
Deliver a robust mobile experience
Provide more efficient debugging capabilities
Establish an extensible mobile base platform that can be enhanced
via OpenNTF and/or Upgrade Packs

© 2013 IBM Corporation
XPages Mobile
Mobile Application & Control Events
●

Single Page Application onOrientationChange / onResize Events

●

Application Page onBefore/After Transition In/Out Events

Mobile Themes
●
Default Mobile Theme and Mobile Theme Overrides for iOS and Android
●
New OneUI IDX plugin containing IDX v1.3 (not fully supported in all controls)
●
New mobile theme available oneui_idx_v1.3 Theme
●
OneUI IDX theme used by TeamRoom and Discussion templates

●

New Device Bean
Used to identify the most common mobile and tablet devices
●
deviceBean.isMobile() / deviceBean.isTablet() / deviceBean.isAndroid() etc
Enhancements & Fixes
●
Photo/File Upload using Partial Refresh (for Mobile and Web)
●
Mobile Debug User Agent switch to mimic iOS or Android user agents
●
MoveTo SimpleAction back button restoring previously loaded mobile view
●
Mobile view and control resizing and layout enhanced on transition / orientation changes
●
Custom mobile Theme inheritance now supported
●
Custom mobile CSS stylesheet ordering corrected to allow custom precedence
© 2013 IBM Corporation
XPages Mobile – Beyond 9.0.1
The “Art of the Possible” - think about what you can do now...
●

Dojo Mobile 1.8.3 is available for direct use within XPages in 9.0.1
●

Extensive Mobile Specific Widget Library is available

●

Client-side JS Script using Touch API onTouchStart/Move/End etc

●

Use Dojo Mobile ScrollableView/Pane's with in-built Touch Scrolling etc

●

Make leaner, lighter Mobile applications by using Server-side Responsive (RESS)
capabilities via the deviceBean, and Client-side Responsive Design (RWD) using
CSS Media Queries / JavaScript mediaQuery Listeners
●

Combine client and server-side for maximum effect!
●

●

http://openntf.org/XSnippets.nsf/snippet.xsp?id=react-to-css-media-queries-to-invoke-dynamicserver-side-content-and-logic
http://openntf.org/XSnippets.nsf/snippet.xsp?id=react-to-css-media-queries-using-client-sidejavascript

© 2013 IBM Corporation
XPages Mobile – Beyond 9.0.1

9.0.1 has laid the foundations for “Extensibility via OpenNTF”
●

More IBM IDX Mobile Theme support (IBM Dojo eXtensions)
●

●

More Device Bean API extensions
●

●

iOS and Android coverage for all XPages Controls

Server-side insight into Orientation, Screen Metrics, …

Broader Control support in a Mobile specific context
●

Date/Time Pickers, TypeAhead, Touch Gestures, …

●

Responsive / Progressive Enhancement Capabilities where applicable

IBM will endeavor to integrate and provide more “Mobile First” controls,
behaviors, and API's beyond 9.0.1 via OpenNTF and/or Upgrade Packs

© 2013 IBM Corporation
Getting started with XPages and IBM SBT SDK
●

●

13

What you need:
●
Notes/Domino 9.0 or 9.0.1
●
http://www.tinyurl.com/IBMDominoDesigner
●
IBM Social SDK
●
http://ibmsbt.openntf.org/
What you should have:
●
Access to IBM Connections, e.g.
●
a greenhouse account on https://greenhouse.lotus.com
●
an IBM Collaboration QuickStart Image (free 60 day trial)
●
Access to other Social platforms
●
Twitter
●
Facebook
●
Dropbox
●
… you name it !
© 2013 IBM Corporation
Installation Information

●

●

●
●
●

●

14

Install the Domino SBT update site on Domino and Domino Designer
●
<root>redistdominocom.ibm.sbt.domino.updatesite.zip
●
Use File > Application > Install menu in Domino Designer
Copy sample applications to Notes/Domino data folders
●
sbtplayground.nsf
●
XPagesSBT.nsf
Open and sign these applications in Designer or Administrator
Customize the end-points defined in your sample applications
Run the applications in a web browser or the Notes client
Users with older XPages SBT SDK:
●
Ensure you have the latest XPagesSBT.nsf
●
Uninstall old SBT SDK feature
●
Verify your app's library dependencies
© 2013 IBM Corporation
The XPages Stack
●

Generic Overview of XPages Runtime Stack
●
XPages is an application framework with an extensible core
XPages App 1

XPages App 2

XPages Ext LibX

Base runtime
platform from 9.0

XPages App N…

Optional

XPages Ext Lib

XPages Core

15

© 2013 IBM Corporation
The XPages Social Stack
●

16

The XPages social stack has been refactored !
●
Social apps no longer depend on ExtLibX but use the IBM SDK

© 2013 IBM Corporation
Domino Designer
●

●

Headless Designer
●
Build NSF/NTFs from source from the command line
●
** TECH PREVIEW **
Update to Designer jvm.properties default setting
●
Installer asserts higher memory configuration
vmarg.Xmx=-Xmx512m
vmarg.Xms=-Xms48m
vmarg.Xmca=-Xmca512k

●

●

17

Support for the new “Load Java” ECL Attribute
Important Improvements (we heard you ! )
●
Fixed bugs when saving LotusScript agents
●
Improved Help Indexing
© 2013 IBM Corporation
Programmability

●

New REST APIs
●
New in 9.0.1 (and on OpenNTF)
●
●
●
●

●
●

●

Calendar service
Access a user's calendar over HTTP
Create, read, update, and delete calendar entries.
Simple actions on entries and notices (accept, decline, counter, delegate, etc.)

Cross Site Request Forgery (CSRF) protection across all services
Read a user's password expiration date (and other statistics)
New on OpenNTF only
●

Freebusy service
●
●

●

18

Find free time for a person or resource
Find a free room for a given time slot

Mail service enhancements including quota and delegation

© 2013 IBM Corporation
19

© 2013 IBM Corporation
Buíochas
Irish
Thai

Hindi

Gracias

Russian

Spanish

Traditional Chinese

Thank You

Arabic

Grazie

Obrigado
Brazilian Portuguese

D anke
German

Italian

M er
ci
French

Tamil

Simplified Chinese
Korean

Japanese

20

© 2013 IBM Corporation

What’s new for Developers in IBM Domino & Domino Designer 9.0.1

  • 1.
    What's new forDevelopers in IBM Domino & Domino Designer 9.0.1 November 6, 2013 Martin Donnelly, Tony McGuckin, Padraic Edwards, Jonathan Roche
  • 2.
    Next Webinar ● ● 2 Tentatively December:SmartCloud for Social Business Extensibility Recordings: YouTube.com/ibmsbt © 2013 IBM Corporation
  • 3.
    Disclaimers IBM’s statements regardingits plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 4.
    Agenda ● Miscellaneous Updates ● Technology refresh ● Accessibility ● HighPerformance View Navigator ● Dynamic Search Improvements ● ● Social SDK Integration ● Domino Designer ● 4 XPages Mobile Programmability © 2013 IBM Corporation
  • 5.
    Technology Updates ● Dojo upgradeto 1.8.3 ● CKEditor Upgrade to 3.6.6.2 ● ● 5 XULRunner Upgrade to 10.0.6 (XPiNC) ● Equivalent of upgrading Notes embedded browser from Firefox 3.6.2 to 10.0.6 Commons Logging Upgrade to V1.1.2 ● Unblocks long-standing issues re XPages apps using other jars shipped with Domino (e.g. Axis) ● Makes it easier to consume web services ● xsp.depend.org.apache.axis=true © 2013 IBM Corporation
  • 6.
    Accessibility ● ● 6 Compliant to theLatest IBM Web Accessibility Checklist ● W3C Web Content Accessibility Guidelines (WCAG) 2.0 Level A / AA ● US Section 508 Standard (Requirement of US Government) ● XPages Runtime ● XPages in the Notes Client ● Discussion / Teamroom Templates ● Updated documentation Scope ● Total of ~400 accessibility issues ● Over ~150 fixes required due to direct non-compliance / standard violations © 2013 IBM Corporation
  • 7.
    High Performance ViewNavigator ● Alternative XPages View Navigator in 9.0.1 ● Performs well with heavily populated view categories ● Based on new 9.0 Java APIs backend classes and NIF capabilities ● View navigation is based on document note ids rather than view position ● View behavior closely emulates Notes client ● Enabled via an xsp.properties setting ● xsp.domino.view.navigator=ByPosition ● xsp.domino.view.navigator=ByNoteId View markup by note id 7 View markup by position © 2013 IBM Corporation
  • 8.
    XPages Dynamic Search– Real Users vs. SpiderBots ● XPages Dynamic Content Control ● Dynamically switches content into an XPage using Ajax hash tag processing techniques ● This works well for real users … but not so well for robots ! ● Bots or Crawlers read a web page to index its content for search engines ● ● 9.0.1 Improvements ● ● ● ● 8 The bots cannot execute the Ajax JS code and thus fail to reach and index any content On the 1st page request in a given XPages session ● The runtime figures out if the page is loaded by a Bot ● Dynamic Content Control can then adapts its markup for Bots or real users ● For normal users, nothing changes except the analysis of the first page request in the session ● For bots, the '#' tags are replaced by '&', effectively avoiding Ajax requests Several popular bots are supported by default Designer allows your customize your bot support Runtime now loads default facet on initial page load © 2013 IBM Corporation
  • 9.
    XPages Mobile ● XPages 9.0.1Mobile Goals ● ● ● ● ● ● Support for Dojo 1.8.3 Improve mobile “look and feel” Introduce new JavaScript mobile APIs Deliver a robust mobile experience Provide more efficient debugging capabilities Establish an extensible mobile base platform that can be enhanced via OpenNTF and/or Upgrade Packs © 2013 IBM Corporation
  • 10.
    XPages Mobile Mobile Application& Control Events ● Single Page Application onOrientationChange / onResize Events ● Application Page onBefore/After Transition In/Out Events Mobile Themes ● Default Mobile Theme and Mobile Theme Overrides for iOS and Android ● New OneUI IDX plugin containing IDX v1.3 (not fully supported in all controls) ● New mobile theme available oneui_idx_v1.3 Theme ● OneUI IDX theme used by TeamRoom and Discussion templates ● New Device Bean Used to identify the most common mobile and tablet devices ● deviceBean.isMobile() / deviceBean.isTablet() / deviceBean.isAndroid() etc Enhancements & Fixes ● Photo/File Upload using Partial Refresh (for Mobile and Web) ● Mobile Debug User Agent switch to mimic iOS or Android user agents ● MoveTo SimpleAction back button restoring previously loaded mobile view ● Mobile view and control resizing and layout enhanced on transition / orientation changes ● Custom mobile Theme inheritance now supported ● Custom mobile CSS stylesheet ordering corrected to allow custom precedence © 2013 IBM Corporation
  • 11.
    XPages Mobile –Beyond 9.0.1 The “Art of the Possible” - think about what you can do now... ● Dojo Mobile 1.8.3 is available for direct use within XPages in 9.0.1 ● Extensive Mobile Specific Widget Library is available ● Client-side JS Script using Touch API onTouchStart/Move/End etc ● Use Dojo Mobile ScrollableView/Pane's with in-built Touch Scrolling etc ● Make leaner, lighter Mobile applications by using Server-side Responsive (RESS) capabilities via the deviceBean, and Client-side Responsive Design (RWD) using CSS Media Queries / JavaScript mediaQuery Listeners ● Combine client and server-side for maximum effect! ● ● http://openntf.org/XSnippets.nsf/snippet.xsp?id=react-to-css-media-queries-to-invoke-dynamicserver-side-content-and-logic http://openntf.org/XSnippets.nsf/snippet.xsp?id=react-to-css-media-queries-using-client-sidejavascript © 2013 IBM Corporation
  • 12.
    XPages Mobile –Beyond 9.0.1 9.0.1 has laid the foundations for “Extensibility via OpenNTF” ● More IBM IDX Mobile Theme support (IBM Dojo eXtensions) ● ● More Device Bean API extensions ● ● iOS and Android coverage for all XPages Controls Server-side insight into Orientation, Screen Metrics, … Broader Control support in a Mobile specific context ● Date/Time Pickers, TypeAhead, Touch Gestures, … ● Responsive / Progressive Enhancement Capabilities where applicable IBM will endeavor to integrate and provide more “Mobile First” controls, behaviors, and API's beyond 9.0.1 via OpenNTF and/or Upgrade Packs © 2013 IBM Corporation
  • 13.
    Getting started withXPages and IBM SBT SDK ● ● 13 What you need: ● Notes/Domino 9.0 or 9.0.1 ● http://www.tinyurl.com/IBMDominoDesigner ● IBM Social SDK ● http://ibmsbt.openntf.org/ What you should have: ● Access to IBM Connections, e.g. ● a greenhouse account on https://greenhouse.lotus.com ● an IBM Collaboration QuickStart Image (free 60 day trial) ● Access to other Social platforms ● Twitter ● Facebook ● Dropbox ● … you name it ! © 2013 IBM Corporation
  • 14.
    Installation Information ● ● ● ● ● ● 14 Install theDomino SBT update site on Domino and Domino Designer ● <root>redistdominocom.ibm.sbt.domino.updatesite.zip ● Use File > Application > Install menu in Domino Designer Copy sample applications to Notes/Domino data folders ● sbtplayground.nsf ● XPagesSBT.nsf Open and sign these applications in Designer or Administrator Customize the end-points defined in your sample applications Run the applications in a web browser or the Notes client Users with older XPages SBT SDK: ● Ensure you have the latest XPagesSBT.nsf ● Uninstall old SBT SDK feature ● Verify your app's library dependencies © 2013 IBM Corporation
  • 15.
    The XPages Stack ● GenericOverview of XPages Runtime Stack ● XPages is an application framework with an extensible core XPages App 1 XPages App 2 XPages Ext LibX Base runtime platform from 9.0 XPages App N… Optional XPages Ext Lib XPages Core 15 © 2013 IBM Corporation
  • 16.
    The XPages SocialStack ● 16 The XPages social stack has been refactored ! ● Social apps no longer depend on ExtLibX but use the IBM SDK © 2013 IBM Corporation
  • 17.
    Domino Designer ● ● Headless Designer ● BuildNSF/NTFs from source from the command line ● ** TECH PREVIEW ** Update to Designer jvm.properties default setting ● Installer asserts higher memory configuration vmarg.Xmx=-Xmx512m vmarg.Xms=-Xms48m vmarg.Xmca=-Xmca512k ● ● 17 Support for the new “Load Java” ECL Attribute Important Improvements (we heard you ! ) ● Fixed bugs when saving LotusScript agents ● Improved Help Indexing © 2013 IBM Corporation
  • 18.
    Programmability ● New REST APIs ● Newin 9.0.1 (and on OpenNTF) ● ● ● ● ● ● ● Calendar service Access a user's calendar over HTTP Create, read, update, and delete calendar entries. Simple actions on entries and notices (accept, decline, counter, delegate, etc.) Cross Site Request Forgery (CSRF) protection across all services Read a user's password expiration date (and other statistics) New on OpenNTF only ● Freebusy service ● ● ● 18 Find free time for a person or resource Find a free room for a given time slot Mail service enhancements including quota and delegation © 2013 IBM Corporation
  • 19.
    19 © 2013 IBMCorporation
  • 20.
    Buíochas Irish Thai Hindi Gracias Russian Spanish Traditional Chinese Thank You Arabic Grazie Obrigado BrazilianPortuguese D anke German Italian M er ci French Tamil Simplified Chinese Korean Japanese 20 © 2013 IBM Corporation