ISBG 2016 - XPages on IBM Bluemix

Oliver Busse
Oliver BusseSenior ICS Consultant & Software Architect bei We4IT Group um We4IT Group
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
XPages on IBM Bluemix:
The Dos and Don'ts
Oliver Busse
We4IT GmbH
Germany
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
About me
• Working for We4IT
–Aveedo® Application Framework
• „Bleeding Yellow“ since R4.5
• IBM Champion for ICS
2015 + 2016
• OpenNTF Member Director
@zeromancer1972
@we4it
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
2016 Developer Competition
• Team-up and win some great prizes!
– 1 year developerWorks Premium Membership (incl. Bluemix)
– $ 500 cash
– 2x $ 250 cash for the 2nd prizes
May 9, 2016 – Sep 5, 2016
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
www.ibm.biz/what-is-dev-comp
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Agenda
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Prerequisites
• Create an IBM Bluemix account
• Create an XPages NoSQL database service
(i.e. a Domino Server)
• Get the latest* Extension Library from OpenNTF
• Install Extlib on your local Domino Designer to get the Bluemix
plugin
• Setup Bluemix preferences in DDE
*) 9.0.1v16, Feb 2016
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Create or login to your Bluemix account
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
XPages NoSQL database service
• Add a service
• Scroll down to „Bluemix Labs Catalog“
• Find „XPages NoSQL Database“
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Additional steps
• Open the XPages NoSQL Database service properties page
• Grab the user ID to access the Bluemix Domino instance
– slaney/Bluemix (USA)
– langan/Bluemix (UK)
– coming soon: CAN and AUS
• Optional: setup additional web users
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Get the Extlib from OpenNTF
• Download and install it via the updatesite mechanism
– https://extlib.openntf.org/
– https://www.dalsgaard-data.eu/blog/deploy-an-eclipse-update-
site-to-ibm-domino-and-ibm-domino-designer/
• Check Extlib version in DDE and server
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Bluemix prefs in Domino Designer
• File, Preferences, Domino Designer, IBM Bluemix
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
New IBM Bluemix toolbar control
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Design and data separation
• Create the data part on the Bluemix Domino instance
– create a blank database
or
– copy and existing database with data
• Setup ACL etc.
– Keep in mind the additional webusers you may have created before
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Setup local dev environment
• Separate data and design also on your local environment
• Find and modify ALL static references to „database“ on
every XPage, Custom Control and Code
– Document data sources
– View data sources
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Compute „database“ references
• Utilize the bluemixContext bean
– comes with the OpenNTF Extension Library since v13
– isRunningOnBluemix()
• findDatabaseName() always returns „tododata.nsf“
– static default filename of the data part on the XPages NoSQL
service
https://www.eu-gb.bluemix.net/docs/services/XPagesNoSQLDatabase/index.html
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
More flexible: use a custom bean
• Compute server and filepath dynamically
– for the local and the Bluemix environment
• Allows a different filename on the XPages NoSQL service (other
than „tododata.nsf“)
• Generic code for „database“ computation for document, view
and repeat data sources
• There is a snippet for you… 
– https://openntf.org/XSnippets.nsf/snippet.xsp?id=daobean-for-xsp-
on-bluemix
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Examples: the DAO-Bean
<xp:this.data>
<xp:dominoDocument
var="document1"
databaseName="#{javascript:dao.dbpath}"
formName="greeting">
</xp:dominoDocument>
</xp:this.data>
<xp:repeat
id="greetings"
rows="9999"
var="greeting"
indexVar="index">
<xp:this.value>
<![CDATA[#{javascript:dao.getViewEntries("greetings")}]]>
</xp:this.value>
…
</xp:repeat>
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Caveats and restrictions
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
What the DDE Plugin does
• When running for the first time
– It will ask for a local folder
– It will create a copy (or replica) of the XSP part
– It will create a manifest.yml file
– It contacts the Bluemix XSP runtime and uploads the 2 files
• Afterwards
– It updates the local copy / replica
– It modifies the manifest.yml file
– It contacts the Bluemix XSP runtime and uploads the 2 files
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
What the DDE Plugin also does…
• It won‘t display error messages or log outputs during
deployment
– hard to troubleshoot
• Sometimes it may not work when running a second, third, …
time
– DDE restart will solve this problem
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
The CF command line
• CF = Cloud Foundry
• Download and install the command line
– https://github.com/cloudfoundry/cli/releases
– http://docs.cloudfoundry.org/devguide/cf-cli/
• You can create a batch file to accellerate deployment
• Verbose output of any action during deployment process
• Access to the XSP runtime file system (e.g. for reading system
logs)
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
A simple triplet of commands
• cf api
– use api.bluemix.net or api.eu-gb.bluemix.net
– cf api https://api.bluemix.net
• cf login
– provide username and password
– cf login –u username –p password
• cf push
– will upload your local droplet instantly using the manifest.yml file
– cf push
– cf push <applicationName>
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Benefits using the CF command line
• Full control of what‘s being done
• Understand how cloud deployment works
• Create new XSP runtimes and instances on the fly
• Deploy plugins and other resources
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Disadvantage using the CF command line
• You have to create the local NSF copy / replica manually
– beware of local encryption!
• You have to type in a console… 
– I recommend using CMDER command line replacement for Windows
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
The manifest.yml file
• The manifest.yml file is a simple text file (not even XML)
• It contains fundamental definitions for the runtime and the
service(s) used
• When using hybrid it contains credentials!
– do not commit the file to a repository!
• Domino Designer Plugin comes with a versatile editor for the
manifest.yml file
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
The manifest.yml editor
• Gives you the basic configuration for a single XSP runtime
application
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Example: manifest.yml
---
applications:
- name: greets
host: greets
instances: 1
memory: 512M
timeout: 180
buildpack: xpages_buildpack
command: /app/launch_xpages_webcontainer
env:
APP_HOME_URL: /greets_xsp.nsf
APP_PRELOAD_DB: greets_xsp.nsf
services:
- IBM XPages NoSQL Database-UK
= custom setting
= default setting
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Did you know?
• The manifest.yml file can deploy more than one application to
the XSP runtime 
– APP_PRELOAD_DB: xsp1.nsf, xsp2.nsf, xsp3.nsf
• By setting values manually you can modify existing or create
new XSP runtimes, e.g.
– scaling instances and memory
– setting up new XSP runtimes and hosts
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Security considerations
• You have to manage at least two ACLs
– XSP Runtime (design part)
– XPages NoSQL service (data part)
• Design part
– manage Anonymous access only to force a login page
• Data part
– Manage ACL corresponding to the user ID and web users you may set
up in the XPages NoSQL service
– Other known ACL rules such as user roles apply here
– You can lock yourself out from that ACL – be careful, Full Access
Admin is NOT available to unlock!
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Locked out from data NSF?
• Deleting and re-creating the service has no effect, NSFs will
re-appear!
• You have to contact IBM support for unlocking or deleting
the NSF!
• Locked out from design NSF?
• remove the runtime and re-deploy – phew! 
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Imagine…
• to use your favorite extensions even on IBM Bluemix
• to enrich your application with genius software like the
OpenNTF Domino API or the XLogger
• You can do this!
+
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Using plugins: preparation
• Create a folder „shared-plugins“ in the local deployment
folder
• Download the plugin or extension, unzip it
• Locate the updatesite version of the plugin
• Copy the content of the plugins folder into the “shared-
plugins” folder (.jar-files)
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Using plugins: deployment
• Deploy the application (cf push)
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
• Prerequisites
• Best practices: design and data separation
• Using the DDE plugin vs. the CF command line
• Understanding the "mysterious" MANIFEST.YML file
• Security considerations
• Plugins and extensions? No problem!
• Tipps & tricks
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Using the XPages Toolbox
• Versatile profiling tool for performance monitoring
• Available on OpenNTF for on-premises use
– https://www.openntf.org/main.nsf/project.xsp?r=project/XPages%20
Toolbox/
• Setup automatically by modifying the manifest.yml file
• Add this to the env section:
– APP_INCLUDE_XPAGES_TOOLBOX: '1'
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
XPages Toolbox (Profiler)
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Grant restricted access of the JVM
• Like in on-premises environments you may want to enable full
access for the JVM when using e.g. Java reflections.
• Instead of setting the java.pol file you simply add this to the
manifest.yml
– APP_JAVA_POLICY_ALL_PERMISSION: ‘1’
• Keep in mind that this may be a security issue
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Verbose mode while deploying
• When using the CF command line the following added to the
manifest.yml file will deliver detailed messages during the
deployment
– APP_VERBOSE_STAGING: '1'
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Don‘t want to type?
• Use the editor to set those up 
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Missing view icons
• When using view icons in XPages view panels the icons are
missing
• They won‘t be displayed even if you use @ViewIconUrl SSJS
function
• However, you can add them manually 
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
View icons: lost but found
• Open the deployment folder of the XSP part
• Create the folder notesdata/domino
• Copy the folder <NotesData>/domino/icons to it
• The folder will be published to the XSP runtime
• The view icons will re-appear!
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Q & A
Get in touch:
xpages.slack.com
#bluemix-dev
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Thank you!
Special thanks to:
Tony McGuckin, Martin Donnelly, Brian Gleeson
(IBM Ireland Labs, XPages and Bluemix Dev Team)
Pete Janzen
(IBM, Sr. Product Manager, IBM Enterprise Social Solutions)
XPages on IBM Bluemix: The Do‘s and Don‘ts
www.isbg.org 23.+24.05.2016 @LSBG
Resources
• https://www.ibm.com/developerworks/community/blogs/762e655e-e86c-4624-9662-ee81c6874de1/entry/dev-comp-
2016?lang=en
• https://openntf.org/XSnippets.nsf/snippet.xsp?id=daobean-for-xsp-on-Bluemix
• http://notesx.net:8090/obusse/Greets
• http://greets.eu-gb.mybluemix.net/
• http://cmder.net/
• https://www.openntf.org/main.nsf/project.xsp?r=project/XPages%20Toolbox/
• http://oliverbusse.notesx.net/hp.nsf/blogpost.xsp?documentId=10C2
1 von 51

Recomendados

GraphDb in XPages von
GraphDb in XPagesGraphDb in XPages
GraphDb in XPagesOliver Busse
785 views15 Folien
Find your data von
Find your dataFind your data
Find your dataOliver Busse
962 views20 Folien
Building an open data platform with apache iceberg von
Building an open data platform with apache icebergBuilding an open data platform with apache iceberg
Building an open data platform with apache icebergAlluxio, Inc.
564 views20 Folien
NOSQL Databases for the .NET Developer von
NOSQL Databases for the .NET DeveloperNOSQL Databases for the .NET Developer
NOSQL Databases for the .NET DeveloperJesus Rodriguez
1.3K views35 Folien
seminar presentation on apache-spark von
seminar presentation on apache-sparkseminar presentation on apache-spark
seminar presentation on apache-sparkJawhar Ali
793 views20 Folien
Key Challenges in Cloud Computing and How Yahoo! is Approaching Them von
Key Challenges in Cloud Computing and How Yahoo! is Approaching ThemKey Challenges in Cloud Computing and How Yahoo! is Approaching Them
Key Challenges in Cloud Computing and How Yahoo! is Approaching ThemYahoo Developer Network
1.9K views56 Folien

Más contenido relacionado

Was ist angesagt?

Implementing MongoDB at Shutterfly (Kenny Gorman) von
Implementing MongoDB at Shutterfly (Kenny Gorman)Implementing MongoDB at Shutterfly (Kenny Gorman)
Implementing MongoDB at Shutterfly (Kenny Gorman)MongoSF
3.1K views14 Folien
Presto summit israel 2019-04 von
Presto summit   israel 2019-04Presto summit   israel 2019-04
Presto summit israel 2019-04Ori Reshef
484 views27 Folien
Database Choices von
Database ChoicesDatabase Choices
Database ChoicesLynn Langit
2.6K views43 Folien
Sasaki practical-linked-data von
Sasaki practical-linked-dataSasaki practical-linked-data
Sasaki practical-linked-dataFelix Sasaki
985 views14 Folien
Search api d8 von
Search api d8Search api d8
Search api d8Dropsolid
2.5K views23 Folien
DSpace at ILRI : A semi-technical overview of “CGSpace” von
DSpace at ILRI : A semi-technical overview of “CGSpace”DSpace at ILRI : A semi-technical overview of “CGSpace”
DSpace at ILRI : A semi-technical overview of “CGSpace”CIARD Movement
999 views21 Folien

Was ist angesagt?(20)

Implementing MongoDB at Shutterfly (Kenny Gorman) von MongoSF
Implementing MongoDB at Shutterfly (Kenny Gorman)Implementing MongoDB at Shutterfly (Kenny Gorman)
Implementing MongoDB at Shutterfly (Kenny Gorman)
MongoSF3.1K views
Presto summit israel 2019-04 von Ori Reshef
Presto summit   israel 2019-04Presto summit   israel 2019-04
Presto summit israel 2019-04
Ori Reshef484 views
Database Choices von Lynn Langit
Database ChoicesDatabase Choices
Database Choices
Lynn Langit2.6K views
Sasaki practical-linked-data von Felix Sasaki
Sasaki practical-linked-dataSasaki practical-linked-data
Sasaki practical-linked-data
Felix Sasaki985 views
Search api d8 von Dropsolid
Search api d8Search api d8
Search api d8
Dropsolid2.5K views
DSpace at ILRI : A semi-technical overview of “CGSpace” von CIARD Movement
DSpace at ILRI : A semi-technical overview of “CGSpace”DSpace at ILRI : A semi-technical overview of “CGSpace”
DSpace at ILRI : A semi-technical overview of “CGSpace”
CIARD Movement999 views
Sitecore at the University of Alberta von Tim Schneider
Sitecore at the University of AlbertaSitecore at the University of Alberta
Sitecore at the University of Alberta
Tim Schneider1K views
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ... von Modern Data Stack France
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...
HUG France Feb 2016 - Migration de données structurées entre Hadoop et RDBMS ...
U-SQL Learning Resources (SQLBits 2016) von Michael Rys
U-SQL Learning Resources (SQLBits 2016)U-SQL Learning Resources (SQLBits 2016)
U-SQL Learning Resources (SQLBits 2016)
Michael Rys437 views
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar von Nilesh Shah
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriarAdf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Adf and ala design c sharp corner toronto chapter feb 2019 meetup nik shahriar
Nilesh Shah101 views
Integrating Drupal with a Triple Store von Barry Norton
Integrating Drupal with a Triple StoreIntegrating Drupal with a Triple Store
Integrating Drupal with a Triple Store
Barry Norton1.2K views
Scaling ELK Stack - DevOpsDays Singapore von Angad Singh
Scaling ELK Stack - DevOpsDays SingaporeScaling ELK Stack - DevOpsDays Singapore
Scaling ELK Stack - DevOpsDays Singapore
Angad Singh754 views
Future of pandas von Jeff Reback
Future of pandasFuture of pandas
Future of pandas
Jeff Reback5.4K views
PyCon.DE / PyData Karlsruhe keynote: "Looking backward, looking forward" von Wes McKinney
PyCon.DE / PyData Karlsruhe keynote: "Looking backward, looking forward"PyCon.DE / PyData Karlsruhe keynote: "Looking backward, looking forward"
PyCon.DE / PyData Karlsruhe keynote: "Looking backward, looking forward"
Wes McKinney1.1K views
Apache Arrow: Cross-language Development Platform for In-memory Data von Wes McKinney
Apache Arrow: Cross-language Development Platform for In-memory DataApache Arrow: Cross-language Development Platform for In-memory Data
Apache Arrow: Cross-language Development Platform for In-memory Data
Wes McKinney6.6K views
JanusGraph, Jupyter Meetup NYC von Jason Plurad
JanusGraph, Jupyter Meetup NYCJanusGraph, Jupyter Meetup NYC
JanusGraph, Jupyter Meetup NYC
Jason Plurad505 views
Semantics, rdf and drupal von Gokul Nk
Semantics, rdf and drupalSemantics, rdf and drupal
Semantics, rdf and drupal
Gokul Nk736 views

Destacado

Utilizing the open ntf domino api von
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino apiOliver Busse
782 views48 Folien
ULC - Connect 2014 Nachlese von
ULC - Connect 2014 NachleseULC - Connect 2014 Nachlese
ULC - Connect 2014 NachleseOliver Busse
1K views26 Folien
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar... von
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...JRibbeck
1.9K views33 Folien
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web... von
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...Oliver Busse
1.2K views44 Folien
SUTOL 2015 - Utilizing the OpenNTF Domino API von
SUTOL 2015 - Utilizing the OpenNTF Domino APISUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino APIOliver Busse
1.1K views49 Folien
Transformations - a TLCC & Teamstudio Webinar von
Transformations - a TLCC & Teamstudio WebinarTransformations - a TLCC & Teamstudio Webinar
Transformations - a TLCC & Teamstudio WebinarOliver Busse
1.3K views34 Folien

Destacado(20)

Utilizing the open ntf domino api von Oliver Busse
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino api
Oliver Busse782 views
ULC - Connect 2014 Nachlese von Oliver Busse
ULC - Connect 2014 NachleseULC - Connect 2014 Nachlese
ULC - Connect 2014 Nachlese
Oliver Busse1K views
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar... von JRibbeck
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
DNUG 2014 Herbstkonferenz: Moderne Architektur - Hochskalierbare Anwendungsar...
JRibbeck1.9K views
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web... von Oliver Busse
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungenweb...
OSA Anwendertreffen 2014 - "Clients ausgedünnt: Notes-/Domino-Anwendungen web...
Oliver Busse1.2K views
SUTOL 2015 - Utilizing the OpenNTF Domino API von Oliver Busse
SUTOL 2015 - Utilizing the OpenNTF Domino APISUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino API
Oliver Busse1.1K views
Transformations - a TLCC & Teamstudio Webinar von Oliver Busse
Transformations - a TLCC & Teamstudio WebinarTransformations - a TLCC & Teamstudio Webinar
Transformations - a TLCC & Teamstudio Webinar
Oliver Busse1.3K views
Dnug 112014 modernization_openn_ntf_ersatzsession von Oliver Busse
Dnug 112014 modernization_openn_ntf_ersatzsessionDnug 112014 modernization_openn_ntf_ersatzsession
Dnug 112014 modernization_openn_ntf_ersatzsession
Oliver Busse931 views
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe... von Oliver Busse
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
Oliver Busse643 views
Utilizing the OpenNTF Domino API von Oliver Busse
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
Oliver Busse912 views
Fix & fertig: Best Practises für "XPages-Migranten" von Oliver Busse
Fix & fertig: Best Practises für "XPages-Migranten"Fix & fertig: Best Practises für "XPages-Migranten"
Fix & fertig: Best Practises für "XPages-Migranten"
Oliver Busse1.7K views
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann von Belsoft
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kannXpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Xpages - oder was man mit einer alten Notes-DB so alles anstellen kann
Belsoft1.9K views
Out of the Blue - the Workflow in Bluemix Development von Oliver Busse
Out of the Blue - the Workflow in Bluemix DevelopmentOut of the Blue - the Workflow in Bluemix Development
Out of the Blue - the Workflow in Bluemix Development
Oliver Busse3.2K views
Out of the Blue: Getting started with IBM Bluemix development von Oliver Busse
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix development
Oliver Busse1.7K views
Java & Notes - Mit Eclipse neue Features für Notes entwickeln | C.Habermueller von Christian Habermueller
Java & Notes - Mit Eclipse neue Features für Notes entwickeln | C.HabermuellerJava & Notes - Mit Eclipse neue Features für Notes entwickeln | C.Habermueller
Java & Notes - Mit Eclipse neue Features für Notes entwickeln | C.Habermueller
MWLUG 2016 : AD117 : Xpages & jQuery DataTables von Michael Smith
MWLUG 2016 : AD117 : Xpages & jQuery DataTablesMWLUG 2016 : AD117 : Xpages & jQuery DataTables
MWLUG 2016 : AD117 : Xpages & jQuery DataTables
Michael Smith3.7K views
XPages on Bluemix - the Do's and Dont's von Oliver Busse
XPages on Bluemix - the Do's and Dont'sXPages on Bluemix - the Do's and Dont's
XPages on Bluemix - the Do's and Dont's
Oliver Busse1.4K views
A World Without Applications von Red Pill Now
A World Without ApplicationsA World Without Applications
A World Without Applications
Red Pill Now3.7K views
Utilizing the OpenNTF Domino API von Oliver Busse
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
Oliver Busse3.2K views

Similar a ISBG 2016 - XPages on IBM Bluemix

XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016 von
XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016
XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016ICS User Group
619 views53 Folien
A301 ctu madrid2016-monitoring von
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoringMichael Dawson
494 views46 Folien
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB) von
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)Issac Buenrostro
16.9K views59 Folien
Database 101 on IBM i von
Database 101 on IBM iDatabase 101 on IBM i
Database 101 on IBM iHelpSystems
733 views54 Folien
Building real time data-driven products von
Building real time data-driven productsBuilding real time data-driven products
Building real time data-driven productsLars Albertsson
2.8K views51 Folien
Webinar: High Performance MongoDB Applications with IBM POWER8 von
Webinar: High Performance MongoDB Applications with IBM POWER8Webinar: High Performance MongoDB Applications with IBM POWER8
Webinar: High Performance MongoDB Applications with IBM POWER8MongoDB
1.4K views25 Folien

Similar a ISBG 2016 - XPages on IBM Bluemix(20)

XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016 von ICS User Group
XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016
XPages on IBM Bluemix: The Do's and Dont's - ICS.UG 2016
ICS User Group619 views
A301 ctu madrid2016-monitoring von Michael Dawson
A301 ctu madrid2016-monitoringA301 ctu madrid2016-monitoring
A301 ctu madrid2016-monitoring
Michael Dawson494 views
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB) von Issac Buenrostro
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)
Open Source LinkedIn Analytics Pipeline - BOSS 2016 (VLDB)
Issac Buenrostro16.9K views
Database 101 on IBM i von HelpSystems
Database 101 on IBM iDatabase 101 on IBM i
Database 101 on IBM i
HelpSystems733 views
Building real time data-driven products von Lars Albertsson
Building real time data-driven productsBuilding real time data-driven products
Building real time data-driven products
Lars Albertsson2.8K views
Webinar: High Performance MongoDB Applications with IBM POWER8 von MongoDB
Webinar: High Performance MongoDB Applications with IBM POWER8Webinar: High Performance MongoDB Applications with IBM POWER8
Webinar: High Performance MongoDB Applications with IBM POWER8
MongoDB1.4K views
VeeamON 2023 Architecting Veeam Backup for Microsoft 365 at Scale von Jim Jones
VeeamON 2023 Architecting Veeam Backup for Microsoft 365 at ScaleVeeamON 2023 Architecting Veeam Backup for Microsoft 365 at Scale
VeeamON 2023 Architecting Veeam Backup for Microsoft 365 at Scale
Jim Jones98 views
Back from the Dead: When Bad Code Kills a Good Server von Teamstudio
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good Server
Teamstudio1.4K views
Introduction to IBM Spectrum Scale and Its Use in Life Science von Sandeep Patil
Introduction to IBM Spectrum Scale and Its Use in Life ScienceIntroduction to IBM Spectrum Scale and Its Use in Life Science
Introduction to IBM Spectrum Scale and Its Use in Life Science
Sandeep Patil1.7K views
Dd13.2013.milano.open ntf von Ulrich Krause
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
Ulrich Krause12.4K views
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology von Sanjay Nayak
IBM Bluemix and Docker Guest Lecture at Cork Institute of TechnologyIBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
Sanjay Nayak2.2K views
Solving enterprise challenges through scale out storage &amp; big compute final von Avere Systems
Solving enterprise challenges through scale out storage &amp; big compute finalSolving enterprise challenges through scale out storage &amp; big compute final
Solving enterprise challenges through scale out storage &amp; big compute final
Avere Systems578 views
Building Responsive Applications Using XPages von Teamstudio
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
Teamstudio4.8K views
Framing the Argument: How to Scale Faster with NoSQL von Inside Analysis
Framing the Argument: How to Scale Faster with NoSQLFraming the Argument: How to Scale Faster with NoSQL
Framing the Argument: How to Scale Faster with NoSQL
Inside Analysis643 views
Measure and Increase Developer Productivity with Help of Serverless at JCON 2... von Vadym Kazulkin
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Measure and Increase Developer Productivity with Help of Serverless at JCON 2...
Vadym Kazulkin176 views
"It’s not only Lambda! Economics behind Serverless" at JAX Conference in Mai ... von Vadym Kazulkin
"It’s not only Lambda! Economics behind Serverless" at JAX Conference in Mai ..."It’s not only Lambda! Economics behind Serverless" at JAX Conference in Mai ...
"It’s not only Lambda! Economics behind Serverless" at JAX Conference in Mai ...
Vadym Kazulkin190 views
FaaS or not to FaaS. Visible and invsible benefits of the Serverless paradigm... von Vadym Kazulkin
FaaS or not to FaaS. Visible and invsible benefits of the Serverless paradigm...FaaS or not to FaaS. Visible and invsible benefits of the Serverless paradigm...
FaaS or not to FaaS. Visible and invsible benefits of the Serverless paradigm...
Vadym Kazulkin333 views
Spark Summit EU talk by Jiri Simsa von Alluxio, Inc.
Spark Summit EU talk by Jiri SimsaSpark Summit EU talk by Jiri Simsa
Spark Summit EU talk by Jiri Simsa
Alluxio, Inc.375 views

Más de Oliver Busse

HCL Domino Volt - der NSF Killer? von
HCL Domino Volt - der NSF Killer?HCL Domino Volt - der NSF Killer?
HCL Domino Volt - der NSF Killer?Oliver Busse
142 views43 Folien
Outlook becomes a Team Player - with a clever add-in von
Outlook becomes a Team Player - with a clever add-inOutlook becomes a Team Player - with a clever add-in
Outlook becomes a Team Player - with a clever add-inOliver Busse
116 views26 Folien
The NERD stuff - opening for Domino to the modern web developer von
The NERD stuff - opening for Domino to the modern web developerThe NERD stuff - opening for Domino to the modern web developer
The NERD stuff - opening for Domino to the modern web developerOliver Busse
650 views49 Folien
DNUG Development Day 2019 von
DNUG Development Day 2019DNUG Development Day 2019
DNUG Development Day 2019Oliver Busse
376 views23 Folien
DNUG44 Watson Workspace von
DNUG44 Watson WorkspaceDNUG44 Watson Workspace
DNUG44 Watson WorkspaceOliver Busse
255 views24 Folien
Paradiesisch - OpenNTF von
Paradiesisch - OpenNTFParadiesisch - OpenNTF
Paradiesisch - OpenNTFOliver Busse
269 views38 Folien

Más de Oliver Busse(6)

HCL Domino Volt - der NSF Killer? von Oliver Busse
HCL Domino Volt - der NSF Killer?HCL Domino Volt - der NSF Killer?
HCL Domino Volt - der NSF Killer?
Oliver Busse142 views
Outlook becomes a Team Player - with a clever add-in von Oliver Busse
Outlook becomes a Team Player - with a clever add-inOutlook becomes a Team Player - with a clever add-in
Outlook becomes a Team Player - with a clever add-in
Oliver Busse116 views
The NERD stuff - opening for Domino to the modern web developer von Oliver Busse
The NERD stuff - opening for Domino to the modern web developerThe NERD stuff - opening for Domino to the modern web developer
The NERD stuff - opening for Domino to the modern web developer
Oliver Busse650 views
DNUG Development Day 2019 von Oliver Busse
DNUG Development Day 2019DNUG Development Day 2019
DNUG Development Day 2019
Oliver Busse376 views
DNUG44 Watson Workspace von Oliver Busse
DNUG44 Watson WorkspaceDNUG44 Watson Workspace
DNUG44 Watson Workspace
Oliver Busse255 views
Paradiesisch - OpenNTF von Oliver Busse
Paradiesisch - OpenNTFParadiesisch - OpenNTF
Paradiesisch - OpenNTF
Oliver Busse269 views

Último

JioEngage_Presentation.pptx von
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptxadmin125455
9 views4 Folien
Transport Management System - Shipment & Container Tracking von
Transport Management System - Shipment & Container TrackingTransport Management System - Shipment & Container Tracking
Transport Management System - Shipment & Container TrackingFreightoscope
6 views3 Folien
EV Charging App Case von
EV Charging App Case EV Charging App Case
EV Charging App Case iCoderz Solutions
10 views1 Folie
Dapr Unleashed: Accelerating Microservice Development von
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice DevelopmentMiroslav Janeski
16 views29 Folien
Quality Assurance von
Quality Assurance Quality Assurance
Quality Assurance interworksoftware2
8 views6 Folien
Introduction to Maven von
Introduction to MavenIntroduction to Maven
Introduction to MavenJohn Valentino
7 views10 Folien

Último(20)

JioEngage_Presentation.pptx von admin125455
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptx
admin1254559 views
Transport Management System - Shipment & Container Tracking von Freightoscope
Transport Management System - Shipment & Container TrackingTransport Management System - Shipment & Container Tracking
Transport Management System - Shipment & Container Tracking
Freightoscope 6 views
Dapr Unleashed: Accelerating Microservice Development von Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski16 views
How To Make Your Plans Suck Less — Maarten Dalmijn at the 57th Hands-on Agile... von Stefan Wolpers
How To Make Your Plans Suck Less — Maarten Dalmijn at the 57th Hands-on Agile...How To Make Your Plans Suck Less — Maarten Dalmijn at the 57th Hands-on Agile...
How To Make Your Plans Suck Less — Maarten Dalmijn at the 57th Hands-on Agile...
Stefan Wolpers44 views
Understanding HTML terminology von artembondar5
Understanding HTML terminologyUnderstanding HTML terminology
Understanding HTML terminology
artembondar58 views
tecnologia18.docx von nosi6702
tecnologia18.docxtecnologia18.docx
tecnologia18.docx
nosi67026 views
How Workforce Management Software Empowers SMEs | TraQSuite von TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuiteHow Workforce Management Software Empowers SMEs | TraQSuite
How Workforce Management Software Empowers SMEs | TraQSuite
TraQSuite7 views
Supercharging your Python Development Environment with VS Code and Dev Contai... von Dawn Wages
Supercharging your Python Development Environment with VS Code and Dev Contai...Supercharging your Python Development Environment with VS Code and Dev Contai...
Supercharging your Python Development Environment with VS Code and Dev Contai...
Dawn Wages5 views
Advanced API Mocking Techniques Using Wiremock von Dimpy Adhikary
Advanced API Mocking Techniques Using WiremockAdvanced API Mocking Techniques Using Wiremock
Advanced API Mocking Techniques Using Wiremock
Dimpy Adhikary5 views
Top-5-production-devconMunich-2023.pptx von Tier1 app
Top-5-production-devconMunich-2023.pptxTop-5-production-devconMunich-2023.pptx
Top-5-production-devconMunich-2023.pptx
Tier1 app10 views

ISBG 2016 - XPages on IBM Bluemix

  • 1. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG XPages on IBM Bluemix: The Dos and Don'ts Oliver Busse We4IT GmbH Germany
  • 2. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG About me • Working for We4IT –Aveedo® Application Framework • „Bleeding Yellow“ since R4.5 • IBM Champion for ICS 2015 + 2016 • OpenNTF Member Director @zeromancer1972 @we4it
  • 3. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG 2016 Developer Competition • Team-up and win some great prizes! – 1 year developerWorks Premium Membership (incl. Bluemix) – $ 500 cash – 2x $ 250 cash for the 2nd prizes May 9, 2016 – Sep 5, 2016
  • 4. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG www.ibm.biz/what-is-dev-comp
  • 5. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Agenda • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 6. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 7. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Prerequisites • Create an IBM Bluemix account • Create an XPages NoSQL database service (i.e. a Domino Server) • Get the latest* Extension Library from OpenNTF • Install Extlib on your local Domino Designer to get the Bluemix plugin • Setup Bluemix preferences in DDE *) 9.0.1v16, Feb 2016
  • 8. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Create or login to your Bluemix account
  • 9. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG XPages NoSQL database service • Add a service • Scroll down to „Bluemix Labs Catalog“ • Find „XPages NoSQL Database“
  • 10. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Additional steps • Open the XPages NoSQL Database service properties page • Grab the user ID to access the Bluemix Domino instance – slaney/Bluemix (USA) – langan/Bluemix (UK) – coming soon: CAN and AUS • Optional: setup additional web users
  • 11. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG
  • 12. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG
  • 13. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Get the Extlib from OpenNTF • Download and install it via the updatesite mechanism – https://extlib.openntf.org/ – https://www.dalsgaard-data.eu/blog/deploy-an-eclipse-update- site-to-ibm-domino-and-ibm-domino-designer/ • Check Extlib version in DDE and server
  • 14. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Bluemix prefs in Domino Designer • File, Preferences, Domino Designer, IBM Bluemix
  • 15. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG New IBM Bluemix toolbar control
  • 16. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 17. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Design and data separation • Create the data part on the Bluemix Domino instance – create a blank database or – copy and existing database with data • Setup ACL etc. – Keep in mind the additional webusers you may have created before
  • 18. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Setup local dev environment • Separate data and design also on your local environment • Find and modify ALL static references to „database“ on every XPage, Custom Control and Code – Document data sources – View data sources
  • 19. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Compute „database“ references • Utilize the bluemixContext bean – comes with the OpenNTF Extension Library since v13 – isRunningOnBluemix() • findDatabaseName() always returns „tododata.nsf“ – static default filename of the data part on the XPages NoSQL service https://www.eu-gb.bluemix.net/docs/services/XPagesNoSQLDatabase/index.html
  • 20. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG More flexible: use a custom bean • Compute server and filepath dynamically – for the local and the Bluemix environment • Allows a different filename on the XPages NoSQL service (other than „tododata.nsf“) • Generic code for „database“ computation for document, view and repeat data sources • There is a snippet for you…  – https://openntf.org/XSnippets.nsf/snippet.xsp?id=daobean-for-xsp- on-bluemix
  • 21. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Examples: the DAO-Bean <xp:this.data> <xp:dominoDocument var="document1" databaseName="#{javascript:dao.dbpath}" formName="greeting"> </xp:dominoDocument> </xp:this.data> <xp:repeat id="greetings" rows="9999" var="greeting" indexVar="index"> <xp:this.value> <![CDATA[#{javascript:dao.getViewEntries("greetings")}]]> </xp:this.value> … </xp:repeat>
  • 22. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Caveats and restrictions • Tipps & tricks
  • 23. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG What the DDE Plugin does • When running for the first time – It will ask for a local folder – It will create a copy (or replica) of the XSP part – It will create a manifest.yml file – It contacts the Bluemix XSP runtime and uploads the 2 files • Afterwards – It updates the local copy / replica – It modifies the manifest.yml file – It contacts the Bluemix XSP runtime and uploads the 2 files
  • 24. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG What the DDE Plugin also does… • It won‘t display error messages or log outputs during deployment – hard to troubleshoot • Sometimes it may not work when running a second, third, … time – DDE restart will solve this problem
  • 25. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG The CF command line • CF = Cloud Foundry • Download and install the command line – https://github.com/cloudfoundry/cli/releases – http://docs.cloudfoundry.org/devguide/cf-cli/ • You can create a batch file to accellerate deployment • Verbose output of any action during deployment process • Access to the XSP runtime file system (e.g. for reading system logs)
  • 26. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG A simple triplet of commands • cf api – use api.bluemix.net or api.eu-gb.bluemix.net – cf api https://api.bluemix.net • cf login – provide username and password – cf login –u username –p password • cf push – will upload your local droplet instantly using the manifest.yml file – cf push – cf push <applicationName>
  • 27. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Benefits using the CF command line • Full control of what‘s being done • Understand how cloud deployment works • Create new XSP runtimes and instances on the fly • Deploy plugins and other resources
  • 28. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Disadvantage using the CF command line • You have to create the local NSF copy / replica manually – beware of local encryption! • You have to type in a console…  – I recommend using CMDER command line replacement for Windows
  • 29. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 30. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG The manifest.yml file • The manifest.yml file is a simple text file (not even XML) • It contains fundamental definitions for the runtime and the service(s) used • When using hybrid it contains credentials! – do not commit the file to a repository! • Domino Designer Plugin comes with a versatile editor for the manifest.yml file
  • 31. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG The manifest.yml editor • Gives you the basic configuration for a single XSP runtime application
  • 32. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Example: manifest.yml --- applications: - name: greets host: greets instances: 1 memory: 512M timeout: 180 buildpack: xpages_buildpack command: /app/launch_xpages_webcontainer env: APP_HOME_URL: /greets_xsp.nsf APP_PRELOAD_DB: greets_xsp.nsf services: - IBM XPages NoSQL Database-UK = custom setting = default setting
  • 33. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Did you know? • The manifest.yml file can deploy more than one application to the XSP runtime  – APP_PRELOAD_DB: xsp1.nsf, xsp2.nsf, xsp3.nsf • By setting values manually you can modify existing or create new XSP runtimes, e.g. – scaling instances and memory – setting up new XSP runtimes and hosts
  • 34. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 35. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Security considerations • You have to manage at least two ACLs – XSP Runtime (design part) – XPages NoSQL service (data part) • Design part – manage Anonymous access only to force a login page • Data part – Manage ACL corresponding to the user ID and web users you may set up in the XPages NoSQL service – Other known ACL rules such as user roles apply here – You can lock yourself out from that ACL – be careful, Full Access Admin is NOT available to unlock!
  • 36. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Locked out from data NSF? • Deleting and re-creating the service has no effect, NSFs will re-appear! • You have to contact IBM support for unlocking or deleting the NSF! • Locked out from design NSF? • remove the runtime and re-deploy – phew! 
  • 37. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 38. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Imagine… • to use your favorite extensions even on IBM Bluemix • to enrich your application with genius software like the OpenNTF Domino API or the XLogger • You can do this! +
  • 39. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Using plugins: preparation • Create a folder „shared-plugins“ in the local deployment folder • Download the plugin or extension, unzip it • Locate the updatesite version of the plugin • Copy the content of the plugins folder into the “shared- plugins” folder (.jar-files)
  • 40. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Using plugins: deployment • Deploy the application (cf push)
  • 41. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG • Prerequisites • Best practices: design and data separation • Using the DDE plugin vs. the CF command line • Understanding the "mysterious" MANIFEST.YML file • Security considerations • Plugins and extensions? No problem! • Tipps & tricks
  • 42. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Using the XPages Toolbox • Versatile profiling tool for performance monitoring • Available on OpenNTF for on-premises use – https://www.openntf.org/main.nsf/project.xsp?r=project/XPages%20 Toolbox/ • Setup automatically by modifying the manifest.yml file • Add this to the env section: – APP_INCLUDE_XPAGES_TOOLBOX: '1'
  • 43. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG XPages Toolbox (Profiler)
  • 44. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Grant restricted access of the JVM • Like in on-premises environments you may want to enable full access for the JVM when using e.g. Java reflections. • Instead of setting the java.pol file you simply add this to the manifest.yml – APP_JAVA_POLICY_ALL_PERMISSION: ‘1’ • Keep in mind that this may be a security issue
  • 45. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Verbose mode while deploying • When using the CF command line the following added to the manifest.yml file will deliver detailed messages during the deployment – APP_VERBOSE_STAGING: '1'
  • 46. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Don‘t want to type? • Use the editor to set those up 
  • 47. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Missing view icons • When using view icons in XPages view panels the icons are missing • They won‘t be displayed even if you use @ViewIconUrl SSJS function • However, you can add them manually 
  • 48. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG View icons: lost but found • Open the deployment folder of the XSP part • Create the folder notesdata/domino • Copy the folder <NotesData>/domino/icons to it • The folder will be published to the XSP runtime • The view icons will re-appear!
  • 49. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Q & A Get in touch: xpages.slack.com #bluemix-dev
  • 50. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Thank you! Special thanks to: Tony McGuckin, Martin Donnelly, Brian Gleeson (IBM Ireland Labs, XPages and Bluemix Dev Team) Pete Janzen (IBM, Sr. Product Manager, IBM Enterprise Social Solutions)
  • 51. XPages on IBM Bluemix: The Do‘s and Don‘ts www.isbg.org 23.+24.05.2016 @LSBG Resources • https://www.ibm.com/developerworks/community/blogs/762e655e-e86c-4624-9662-ee81c6874de1/entry/dev-comp- 2016?lang=en • https://openntf.org/XSnippets.nsf/snippet.xsp?id=daobean-for-xsp-on-Bluemix • http://notesx.net:8090/obusse/Greets • http://greets.eu-gb.mybluemix.net/ • http://cmder.net/ • https://www.openntf.org/main.nsf/project.xsp?r=project/XPages%20Toolbox/ • http://oliverbusse.notesx.net/hp.nsf/blogpost.xsp?documentId=10C2