SlideShare a Scribd company logo
INTRODUCING
CROSSWORLDS
A new tool in your app development box
WebSphere Liberty Productivity with the full power of
Domino/NSF
MISSION
Bring to Domino developers an easy way
into J2EE
Bring to J2EE the full power of Domino
Bring to customers the best of both worlds
WHO AM I?
Daniele Vistalli (www.twitter.com/danielevistalli)
Founder & CTO at Factor-y S.r.l.
Java developer & architect (Java 1.0.2+ on OS/2)
Domino Developer & architect (Notes 4.5+)
WebSphere Developer & architect (WAS 3.5+)
R&D guy / geek / lazy developer (lazyness favours invention)
THE DEVELOPMENT MODEL
PROBLEM
NSF/Domino is NoSQL since before NoSQL existed
Powerful security and replication infrastructure
Great at handling attachments/binary data
Great at workflow
Modern developers don’t get Domino (they call it
legacy… then they set off for less mature NoSQL
solutions)
THE WEBSPHERE PROBLEM
Notes/Domino developers failed to invest into
WebSphere / J2EE due to wrong myths:
- J2EE is slow / cumberstone … (not anymore
since a long time)
- WebSphere is evil (the IBM Workplace product
created this perception in Notes shops)
In 2015 we need to move on. Java / J2EE are the
way you may choose with productivity at hand
THE REAL PROBLEM
There are 10 million NSF applications deployed at
customers. Notes shops (customers / partners)
need to:
- Integrate (with other systems)
- Modernize (mobile, responsive, restful, oauth)
- Be productive and simplify application
development
- Exploit any available tool
WHAT IS CROSSWORLDS?
WebSphere Liberty (8.5.5.4) +
IBM Domino (9.0.1) +
OpenNTF Domino Api +
CrossWorlds feature for Liberty
WEBSPHERE LIBERTY
A fast J2EE Application Server built by IBM for
modern needs.
- Light (< 40 Mb ram, < 5sec startup)
- Open (OSGI based + J2EE 6 / 7)
- Constantly evolving
- Extensible (customizable to the limit)
- Easy to manage (unzip & run, no install needed)
IBM DOMINO (9.0.1)
You should know it 
What we care about is
- Advanced storage facility (NSF), schema free
- Replication and distributed server topology
- Native/embedded security model (+LDAP)
- Provides native binding for Java (Notes.jar /
napi)
OPENNTF DOMINO API
An OpenNTF project that gets you:
- Modern Java constructs on top of Notes.jar API
- Extra goodness:
- Graph API
- HyperSearch/Index
- Xots (agent-manager free Agents)
- Much more (look on slideshare for good content)
CROSSWORLDS FEATURE
An exstension for the WAS Liberty application
server
- Embeds ODA as an OSGI component
- Manages initialization and lifecycle of the
Domino integration (can provide NSF services
even if the Domino server is not running)
- Zero effort setup for developers & sys-admins
- Is the foundation for future work (auto-config,
extensions, Websphere helpers)
WHAT CAN I DO WITH IT ?
Exploit any J2EE / Java library
Exploit Java 1.7/1.8 (Domino still on 1.6)
Manage security your way
J2EE EXPLOITATION FOR DOMINO
- JAX-RS for Rest (the J2EE way)
- JAX-WS for WebServices (the J2EE way)
- Spring, Struts, other framework ? YES
- Choose your own
- Async servlets / higher scalability
plus
- Java Batch
- Scheduler / managed threads
- OSGI application model
JAVA 1.7/1.8 AT HAND
Domino JVM is 1.6
WAS Liberty can run on 1.6/1.7/1.8
You can build your reusable frameworks or exploit
existing frameworks for your apps.
Not tied anymore to IBM’s choices for Domino
MANAGE SECURITY YOUR WAY
- Trusted Authentication Interceptors (TAI) allows
to define your custom system for authentication
and SSO (add Oauth, Saml, custom)
- ODA services allow the creation of:
- Trusted sessions: CrossWorlds is a gateway to any
database on any server in the domino network
- Named sessions: CrossWorlds sessions can proxy any
user and run code on their behalf
- Exploit LTPA (Domino and Liberty share config)
- Exploit LDAP (Liberty uses the same servers as
Domino)
EARLY EXPERIENCE
We’re building it
MacOSX is at hand
Start looking into WebSphere Liberty
Getting started app
WE ARE BUILDING IT
CrossWorlds went from idea to reality in the days
between December 20 2014 and December 31
2014
Most of the discussion is happening at OpenNTF
Domino Api chat group on Skype
We’re doing tests, building stuff, testing things out
MACOSX IS AT HAND
Our hacks got results..
Jesse Gallgher (@Gidgerby) got CrossWorlds
running on a Mac with native access to
domino using the client libraries.
Notes Client + WAS Liberty + CrossWorlds =
modern development for domino on Mac
LOOK FOR LIBERTY
IBM has invested a huge amount in making
WebSphere Liberty a great application server
BlueMix runs on Liberty
Start looking at it today
• https://developer.ibm.com/wasdev/docs/introd
ucing_the_liberty_profile/
• https://developer.ibm.com/wasdev/docs/categ
ory/getting-started/
GETTING STARTED
I’ve created a sampler APP
(included)
It provides a web based
groovy shell allowing you to
test out ODA code from
your browser.
LEGAL
All in
ALL IN
I’ve been looking into the topic of WebSphere Liberty
licensing. I need to get confirmation from IBM’s legal but
here’s what’s going on:
1. XWork Server, Domino Collaboration Express, Domino
Enteprise all include entitlement for IBM WebSphere
Network Deployment
2. WebSphere Network Deployment includes WebSphere
Liberty
3. All you need is already in the server license for your
domino servers
Don’t hold back, go get it.
WHAT’S NEXT
Technical overview
OpenNTF project ?
TECHNICAL OVERVIEW
I’m working on another presentation to describe
how CrossWorlds works and the requirements of it.
I hope to be getting feedback to this introduction
and then prepare a technical presentation going
deeper into it.
OPENNTF PROJECT
My company (Factor-y S.r.l.) is a member of
OpenNTF. We’ve so far not contributed anything.
If CrossWorlds meets the requirements we’ll share it
as our initial contribution and establish CrossWorlds
(or whatever final name we take) as an OpenNTF
project.
THANKS
Thanks to all the guys in the OpenNTF Domino API team
and chat for the support in making this happen
- Nathan T Freeman / Roland Praml / Paul Withers for
helping me understand ODA
- Jesse Gallagher for testing out my stuff and making it
work on MacOSX
- Everybody else for the fun of the discussion that’s
going on
As per Nathan motto: “We do what we must because
we can”
REFERENCES
https://github.com/Factor-y/CrossWorlds
https://developer.ibm.com/wasdev
https://github.com/OpenNTF/org.openntf.domino

More Related Content

What's hot

Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
Ulrich Krause
 
What's New and Next in OpenNTF Domino API (ICON UK 2014)
What's New and Next in OpenNTF Domino API (ICON UK 2014)What's New and Next in OpenNTF Domino API (ICON UK 2014)
What's New and Next in OpenNTF Domino API (ICON UK 2014)
Paul Withers
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
Ulrich Krause
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
Alex Tumanoff
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Heiko Voigt
 
Bccon use notes objects in memory and other useful
Bccon   use notes objects in memory and other usefulBccon   use notes objects in memory and other useful
Bccon use notes objects in memory and other useful
Frank van der Linden
 
Let's server your Data
Let's server your DataLet's server your Data
Let's server your Data
Frank van der Linden
 
Eureka Moment UKLUG
Eureka Moment UKLUGEureka Moment UKLUG
Eureka Moment UKLUG
Paul Withers
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin developmentDr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Ulrich Krause
 
Domino on docker version 2
Domino on docker version 2Domino on docker version 2
Domino on docker version 2
Slobodan Lohja
 
JSF2
JSF2JSF2
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
Howard Greenberg
 
docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...
Matteo Bisi
 
SUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino APISUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino API
Oliver Busse
 
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
Howard Greenberg
 
What's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.xWhat's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.x
Geertjan Wielenga
 
Access Data from XPages with the Relational Controls
Access Data from XPages with the Relational ControlsAccess Data from XPages with the Relational Controls
Access Data from XPages with the Relational Controls
Teamstudio
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
Ulrich Krause
 
An Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPagesAn Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPages
Ulrich Krause
 
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
Serdar Basegmez
 

What's hot (20)

Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
What's New and Next in OpenNTF Domino API (ICON UK 2014)
What's New and Next in OpenNTF Domino API (ICON UK 2014)What's New and Next in OpenNTF Domino API (ICON UK 2014)
What's New and Next in OpenNTF Domino API (ICON UK 2014)
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
 
Bccon use notes objects in memory and other useful
Bccon   use notes objects in memory and other usefulBccon   use notes objects in memory and other useful
Bccon use notes objects in memory and other useful
 
Let's server your Data
Let's server your DataLet's server your Data
Let's server your Data
 
Eureka Moment UKLUG
Eureka Moment UKLUGEureka Moment UKLUG
Eureka Moment UKLUG
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin developmentDr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
 
Domino on docker version 2
Domino on docker version 2Domino on docker version 2
Domino on docker version 2
 
JSF2
JSF2JSF2
JSF2
 
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
 
docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...
 
SUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino APISUTOL 2015 - Utilizing the OpenNTF Domino API
SUTOL 2015 - Utilizing the OpenNTF Domino API
 
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
October OpenNTF Webinar - What we like about Domino/Notes 12, recommended new...
 
What's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.xWhat's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.x
 
Access Data from XPages with the Relational Controls
Access Data from XPages with the Relational ControlsAccess Data from XPages with the Relational Controls
Access Data from XPages with the Relational Controls
 
[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics[DanNotes] XPages - Beyound the Basics
[DanNotes] XPages - Beyound the Basics
 
An Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPagesAn Introduction To Model  View  Controller In XPages
An Introduction To Model  View  Controller In XPages
 
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
 

Similar to Introducing CrossWorlds for IBM Domino

A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
Codemotion
 
PHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the foolPHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the fool
Alessandro Cinelli (cirpo)
 
Project report for final year project
Project report for final year projectProject report for final year project
Project report for final year project
suneel singh
 
Basic of J2EE,WebLogic server,Oracle & Linux
Basic of J2EE,WebLogic server,Oracle & Linux Basic of J2EE,WebLogic server,Oracle & Linux
Basic of J2EE,WebLogic server,Oracle & Linux
Aseem Chakrabarthy
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
Ajeet Singh Raina
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
Ajeet Singh Raina
 
POCO C++ Libraries Intro and Overview
POCO C++ Libraries Intro and OverviewPOCO C++ Libraries Intro and Overview
POCO C++ Libraries Intro and Overview
Günter Obiltschnig
 
Ramji
RamjiRamji
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)
湯米吳 Tommy Wu
 
Web Logic Jboss Final
Web Logic Jboss FinalWeb Logic Jboss Final
Web Logic Jboss Final
Mohamed Atef
 
Cross Platform Mobile Technologies
Cross Platform Mobile TechnologiesCross Platform Mobile Technologies
Cross Platform Mobile Technologies
Talentica Software
 
Java overview 20131022
Java overview 20131022Java overview 20131022
Java overview 20131022
hamidsamadi
 
BBS Selenium & Docker
BBS Selenium & Docker BBS Selenium & Docker
BBS Selenium & Docker
Mustafa Topçuoğulları
 
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
Paul Withers
 
Alfresco: The Story of How Open Source Disrupted the ECM Market
Alfresco: The Story of How Open Source Disrupted the ECM MarketAlfresco: The Story of How Open Source Disrupted the ECM Market
Alfresco: The Story of How Open Source Disrupted the ECM Market
Jeff Potts
 
Core java kvr - satya
Core  java kvr - satyaCore  java kvr - satya
Core java kvr - satya
Satya Johnny
 
Ny symfony meetup may 2015
Ny symfony meetup may 2015Ny symfony meetup may 2015
Ny symfony meetup may 2015
Roland Benedetti
 
Demystifying Docker101
Demystifying Docker101Demystifying Docker101
Demystifying Docker101
Ajeet Singh Raina
 
Demystifying Docker
Demystifying DockerDemystifying Docker
Demystifying Docker
Cloud Native Bangalore
 

Similar to Introducing CrossWorlds for IBM Domino (20)

A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
 
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...
 
PHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the foolPHP is the King, nodejs the prince and python the fool
PHP is the King, nodejs the prince and python the fool
 
Project report for final year project
Project report for final year projectProject report for final year project
Project report for final year project
 
Basic of J2EE,WebLogic server,Oracle & Linux
Basic of J2EE,WebLogic server,Oracle & Linux Basic of J2EE,WebLogic server,Oracle & Linux
Basic of J2EE,WebLogic server,Oracle & Linux
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
 
POCO C++ Libraries Intro and Overview
POCO C++ Libraries Intro and OverviewPOCO C++ Libraries Intro and Overview
POCO C++ Libraries Intro and Overview
 
Ramji
RamjiRamji
Ramji
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)
 
Web Logic Jboss Final
Web Logic Jboss FinalWeb Logic Jboss Final
Web Logic Jboss Final
 
Cross Platform Mobile Technologies
Cross Platform Mobile TechnologiesCross Platform Mobile Technologies
Cross Platform Mobile Technologies
 
Java overview 20131022
Java overview 20131022Java overview 20131022
Java overview 20131022
 
BBS Selenium & Docker
BBS Selenium & Docker BBS Selenium & Docker
BBS Selenium & Docker
 
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
 
Alfresco: The Story of How Open Source Disrupted the ECM Market
Alfresco: The Story of How Open Source Disrupted the ECM MarketAlfresco: The Story of How Open Source Disrupted the ECM Market
Alfresco: The Story of How Open Source Disrupted the ECM Market
 
Core java kvr - satya
Core  java kvr - satyaCore  java kvr - satya
Core java kvr - satya
 
Ny symfony meetup may 2015
Ny symfony meetup may 2015Ny symfony meetup may 2015
Ny symfony meetup may 2015
 
Demystifying Docker101
Demystifying Docker101Demystifying Docker101
Demystifying Docker101
 
Demystifying Docker
Demystifying DockerDemystifying Docker
Demystifying Docker
 

Recently uploaded

What’s New in Odoo 17 – A Complete Roadmap
What’s New in Odoo 17 – A Complete RoadmapWhat’s New in Odoo 17 – A Complete Roadmap
What’s New in Odoo 17 – A Complete Roadmap
Envertis Software Solutions
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Peter Caitens
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
dakas1
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
Boost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management AppsBoost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management Apps
Jhone kinadey
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
Luigi Fugaro
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
Tier1 app
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid
 
Benefits of Artificial Intelligence in Healthcare!
Benefits of  Artificial Intelligence in Healthcare!Benefits of  Artificial Intelligence in Healthcare!
Benefits of Artificial Intelligence in Healthcare!
Prestware
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
Yara Milbes
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLESINTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
anfaltahir1010
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
kalichargn70th171
 

Recently uploaded (20)

What’s New in Odoo 17 – A Complete Roadmap
What’s New in Odoo 17 – A Complete RoadmapWhat’s New in Odoo 17 – A Complete Roadmap
What’s New in Odoo 17 – A Complete Roadmap
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
 
一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理一比一原版(USF毕业证)旧金山大学毕业证如何办理
一比一原版(USF毕业证)旧金山大学毕业证如何办理
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
Boost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management AppsBoost Your Savings with These Money Management Apps
Boost Your Savings with These Money Management Apps
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
 
Benefits of Artificial Intelligence in Healthcare!
Benefits of  Artificial Intelligence in Healthcare!Benefits of  Artificial Intelligence in Healthcare!
Benefits of Artificial Intelligence in Healthcare!
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLESINTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
INTRODUCTION TO AI CLASSICAL THEORY TARGETED EXAMPLES
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
 

Introducing CrossWorlds for IBM Domino

  • 1. INTRODUCING CROSSWORLDS A new tool in your app development box WebSphere Liberty Productivity with the full power of Domino/NSF
  • 2. MISSION Bring to Domino developers an easy way into J2EE Bring to J2EE the full power of Domino Bring to customers the best of both worlds
  • 3. WHO AM I? Daniele Vistalli (www.twitter.com/danielevistalli) Founder & CTO at Factor-y S.r.l. Java developer & architect (Java 1.0.2+ on OS/2) Domino Developer & architect (Notes 4.5+) WebSphere Developer & architect (WAS 3.5+) R&D guy / geek / lazy developer (lazyness favours invention)
  • 4. THE DEVELOPMENT MODEL PROBLEM NSF/Domino is NoSQL since before NoSQL existed Powerful security and replication infrastructure Great at handling attachments/binary data Great at workflow Modern developers don’t get Domino (they call it legacy… then they set off for less mature NoSQL solutions)
  • 5. THE WEBSPHERE PROBLEM Notes/Domino developers failed to invest into WebSphere / J2EE due to wrong myths: - J2EE is slow / cumberstone … (not anymore since a long time) - WebSphere is evil (the IBM Workplace product created this perception in Notes shops) In 2015 we need to move on. Java / J2EE are the way you may choose with productivity at hand
  • 6. THE REAL PROBLEM There are 10 million NSF applications deployed at customers. Notes shops (customers / partners) need to: - Integrate (with other systems) - Modernize (mobile, responsive, restful, oauth) - Be productive and simplify application development - Exploit any available tool
  • 7. WHAT IS CROSSWORLDS? WebSphere Liberty (8.5.5.4) + IBM Domino (9.0.1) + OpenNTF Domino Api + CrossWorlds feature for Liberty
  • 8. WEBSPHERE LIBERTY A fast J2EE Application Server built by IBM for modern needs. - Light (< 40 Mb ram, < 5sec startup) - Open (OSGI based + J2EE 6 / 7) - Constantly evolving - Extensible (customizable to the limit) - Easy to manage (unzip & run, no install needed)
  • 9. IBM DOMINO (9.0.1) You should know it  What we care about is - Advanced storage facility (NSF), schema free - Replication and distributed server topology - Native/embedded security model (+LDAP) - Provides native binding for Java (Notes.jar / napi)
  • 10. OPENNTF DOMINO API An OpenNTF project that gets you: - Modern Java constructs on top of Notes.jar API - Extra goodness: - Graph API - HyperSearch/Index - Xots (agent-manager free Agents) - Much more (look on slideshare for good content)
  • 11. CROSSWORLDS FEATURE An exstension for the WAS Liberty application server - Embeds ODA as an OSGI component - Manages initialization and lifecycle of the Domino integration (can provide NSF services even if the Domino server is not running) - Zero effort setup for developers & sys-admins - Is the foundation for future work (auto-config, extensions, Websphere helpers)
  • 12. WHAT CAN I DO WITH IT ? Exploit any J2EE / Java library Exploit Java 1.7/1.8 (Domino still on 1.6) Manage security your way
  • 13. J2EE EXPLOITATION FOR DOMINO - JAX-RS for Rest (the J2EE way) - JAX-WS for WebServices (the J2EE way) - Spring, Struts, other framework ? YES - Choose your own - Async servlets / higher scalability plus - Java Batch - Scheduler / managed threads - OSGI application model
  • 14. JAVA 1.7/1.8 AT HAND Domino JVM is 1.6 WAS Liberty can run on 1.6/1.7/1.8 You can build your reusable frameworks or exploit existing frameworks for your apps. Not tied anymore to IBM’s choices for Domino
  • 15. MANAGE SECURITY YOUR WAY - Trusted Authentication Interceptors (TAI) allows to define your custom system for authentication and SSO (add Oauth, Saml, custom) - ODA services allow the creation of: - Trusted sessions: CrossWorlds is a gateway to any database on any server in the domino network - Named sessions: CrossWorlds sessions can proxy any user and run code on their behalf - Exploit LTPA (Domino and Liberty share config) - Exploit LDAP (Liberty uses the same servers as Domino)
  • 16. EARLY EXPERIENCE We’re building it MacOSX is at hand Start looking into WebSphere Liberty Getting started app
  • 17. WE ARE BUILDING IT CrossWorlds went from idea to reality in the days between December 20 2014 and December 31 2014 Most of the discussion is happening at OpenNTF Domino Api chat group on Skype We’re doing tests, building stuff, testing things out
  • 18. MACOSX IS AT HAND Our hacks got results.. Jesse Gallgher (@Gidgerby) got CrossWorlds running on a Mac with native access to domino using the client libraries. Notes Client + WAS Liberty + CrossWorlds = modern development for domino on Mac
  • 19. LOOK FOR LIBERTY IBM has invested a huge amount in making WebSphere Liberty a great application server BlueMix runs on Liberty Start looking at it today • https://developer.ibm.com/wasdev/docs/introd ucing_the_liberty_profile/ • https://developer.ibm.com/wasdev/docs/categ ory/getting-started/
  • 20. GETTING STARTED I’ve created a sampler APP (included) It provides a web based groovy shell allowing you to test out ODA code from your browser.
  • 22. ALL IN I’ve been looking into the topic of WebSphere Liberty licensing. I need to get confirmation from IBM’s legal but here’s what’s going on: 1. XWork Server, Domino Collaboration Express, Domino Enteprise all include entitlement for IBM WebSphere Network Deployment 2. WebSphere Network Deployment includes WebSphere Liberty 3. All you need is already in the server license for your domino servers Don’t hold back, go get it.
  • 24. TECHNICAL OVERVIEW I’m working on another presentation to describe how CrossWorlds works and the requirements of it. I hope to be getting feedback to this introduction and then prepare a technical presentation going deeper into it.
  • 25. OPENNTF PROJECT My company (Factor-y S.r.l.) is a member of OpenNTF. We’ve so far not contributed anything. If CrossWorlds meets the requirements we’ll share it as our initial contribution and establish CrossWorlds (or whatever final name we take) as an OpenNTF project.
  • 26. THANKS Thanks to all the guys in the OpenNTF Domino API team and chat for the support in making this happen - Nathan T Freeman / Roland Praml / Paul Withers for helping me understand ODA - Jesse Gallagher for testing out my stuff and making it work on MacOSX - Everybody else for the fun of the discussion that’s going on As per Nathan motto: “We do what we must because we can”

Editor's Notes

  1. Neo4J 1000 times faster than MySQL OrientDb benchmarks Giraph