OpenNTF Webinar Series - Essential Projects You Want to Know About
Come join us and learn how OpenNTF projects can maximize Domino in your organization. In this webinar we will spotlight several popular projects. Whether you are a developer, admininstrator or manager you will see how these projects can maximize your return on your Domino investment.
Wine Tasting App - See how an old stodgy Notes client application was quickly turned into a mobile application using Nomad presented by Theo Heselmans.
DQL Explorer - This application will allow fast queries to huge Domino databases using the new Domino Query Language. This application is ready to deploy and is a great example of how to use LotusScript to do queries. Presented by Luis Guirigay.
OpenLog - this project allows for logging messages and errors in one common log database regardless of the programming language. Why search in 5 different logs to find out why your application is failing? Presented by Paul Withers.
NSF ODP Tooling - Create an application without Designer? Add to Eclipse to support autocompletion? Export an NSF to an ODP (On Disk Project)? Learn how to bring your Domino development tooling into the modern ages using Maven presented by Jesse Gallagher.
OpenNTF Domino API - Get the latest status on this project presented by Jesse Gallagher.
The recording of this webinar is at https://www.youtube.com/watch?v=wW9pQZn1fSc&list=PLaDSIoof-i94x9MWTp5jZWuHL8PqK8efH
2. AGENDA
• Welcome – Howard Greenberg
• About OpenNTF – Graham Acres
• Wine Tasting App - Theo Heselmans
• DQL Explorer - Luis Guirigay
• OpenLog - Paul Withers
• NSF ODP Tooling - Jesse Gallagher
• OpenNTF Domino API - Jesse Gallagher
• Closing and what’s next – Howard Greenberg
3. ASKING QUESTIONS
• First Question – Will this be recorded?
• Yes, view on YouTube!!!
• https://www.youtube.com/user/OpenNTF
• Use the Questions Pane in GoToWebinar
• We will get to your questions at the end
of the webinar
• The speakers will respond to your
questions verbally
• (not in the Questions pane)
4. THANKS TO THE OPENNTF SPONSORS
• HCL contributed $25,000 to help our organization
• Funds these webinars!
• Contests like Hackathons
• Running the organization
• Prominic donates all IT related services
• Cloud Hosting for OpenNTF
• Infrastructure management for HCL Domino and Atlassian
Servers
• System Administration for day-to-day operation
5. OPENNTF BOARD MEMBERS
Name Company Roles
Christian Güdemann WebGate Consulting AG Board Chairman
Adam Foster Oval Business Solutions Board Member
Fredrik Norling QNova Systems AB Board Member
Jesse Gallagher I Know Some Guys Board Member
Doug Robinson Prominic.NET Board Member
Howard Greenberg TLCC Board Member
Nina Wittich Syngenio AG Board Member
Graham Acres Brytek Systems Ltd Board Member
Dan Dumont HCL Board Member
Oliver Busse We4IT Board Member
Paul Withers HCL Board Member
Serdar Basegmez Developi Information Systems Board Member
6. HISTORY OF OPENNTF
• OpenNTF is a strong brand
• OpenNTF is well known to developers in the
Collaboration / XPages / Domino / Notes Community
• GitHub
• Very active on Stack Overflow
• Slack as a support forum for many years
• Many different initiatives including Snippets,
CollaborationToday.org
• Guides and Documentation
7. OPENNTF 2020
• HCL Strategic Partnership with OpenNTF
• Expand into new areas of HCL Digital Solutions portfolio
• Volt
• Continue our history of supporting community events
• Continue our history of supporting community contests
• Continue to host trusted solutions but with an expanded view
• Developers, Admins, End Users
• More options for access to solutions
• Traditional sites
• HCL Solutions Factory
• Wiki
• Project to raise the profile of the projects most used by the
community – and you will be able to vote for your favorites
• Coming Soon: sandbox.openntf.org
8. THIS IS OUR COMMUNITY
• Join us and get involved!
• We are all volunteers
• No effort is too small
• If your idea is bigger than you can do on your own, we
can connect you to a team to work on it
• Test or help or modify an existing project
• Write guides or documentation
• Add reviews on projects / stars on Snippets
9. Make your Notes Client apps
look great on a mobile device
using HCL Nomad
1
Theo Heselmans, Xceed
10. About Theo Heselmans
▪Doing IBM® Notes® Development &
Project Mgt. for more than 20 years!
▪Independent consultant since 2001 for Xceed
▪Coordinator of the Engage User Group
for over 10 years
▪
▪I like wine and other beverages too
▪ Twitter: @theoheselmans
▪ Email: theo@xceed.be
2
11. @theoheselmans
Agenda
▪Why developing for a Touch Device ?
(like the iPad, iPhone or Android Tablet)
▪Main Advantages
▪'Classic' Notes apps work (unmodified) in Nomad, but...
▪We can do better than this!
▪How did we do it?
3
12. @theoheselmans
Mobile Devices
▪More and more devices with Touch interface
▪iPad, Android and Windows 10
▪Tablets are practical
▪ Easy and lightweight to carry around
▪ Big screen real estate
▪ Great User Experience
▪Smartphone are ubiquitous, but tough to design for
4
13. @theoheselmans
HCL Nomad
▪Run any Notes App on your Tablet or Phone unmodified
▪Embed images from Library or Camera, use GPS
▪Supports @Formulas and LotusScript unmodified
▪Complex forms and Logic works
▪Built-in Replication for offline use
▪Uses the user's ID, so easy security/policy
5
24. @theoheselmans
▪ Use @Platform for the OS: e.g. "iOS", "Windows/32"
▪ Use @Platform([Specific]) as it returns:
OS : OS version : Device : DeviceType
on iPad:
"iOS" : "13.1" : "iPad" : "iPad11,4"
on iPhone
"iOS" : "13.1" : "iPhone" : "iPhone10,6"
on Windows 10
"Windows/NT" : "6.2" : "Tablet PC Edition" : "ServicePack 0"
Example: @Platform([Specific]) = "iPhone"
▪ Use specific forms / subforms / views per device (or OS)
16
Wine Tastings 2.0
How to distinguish between devices
25. @theoheselmans
Wine Tastings 2.0
How did we do it: Startup Page
▪Use a Page (on a 1 frame Frameset)
▪Structure with Tables
▪Background images per cell
▪Big text with Hotspots
▪Link to Pages, Framesets or Forms
▪Alternative: bigger image with hotspots on top, or layers
17
27. @theoheselmans
Wine Tastings 2.0
How did we do it: Filters
▪Form with Embedded View
▪Filter(s) with
- Dropdowns
- or Buttons
▪Embedded View with
- Single Category
19
28. @theoheselmans
Wine Tastings 2.0
How did we do it: Structured Form
▪Navigator with icons
- Double set: selected/unselected
- Using Tabbed Table with Switch Rows Programmatically
20
29. @theoheselmans
Wine Tastings 2.0
How did we do it: Form Buttons
▪Action Bar
- Custom (iOS) Icons
- Align Left or Right
- Minimal number of Buttons
- Show only Icon
▪The @URLOpen opens up
the Native iOS Maps app
21
30. @theoheselmans
Wine Tastings 2.0
New in Notes/Domino v11
▪Action Button
- Show up Bottom-Right
- Pops up selection
▪Right mouse menu
- long press on document in view
▪Hide 'On Mobile' is active
▪Swipe Left/Right
- currently not implemented in Nomad
22
39. I have a large client project that involves OSGi plugins, deployment instructions, and a dozen NSFs
Maven allows me to create a distribution ZIP
…but this required making binary copies of the NSFs each time they’re updated
It’s time-intensive, it’s error-prone, and binary blobs make Git angry
I set out to automate the whole process
THE ORIGINS
40. “Headless Designer” mode has shipped with Designer for a while now
Christian Güdemann wrote a Maven wrapper
However:
Windows-only
UI automation is extremely fault-prone
Fiddliness of plugin installation means dedicating an active-UI Windows VM
THE ORIGINS
41. ODP -> NSF Compilation
NSF -> ODP Export
NTF Deployment (Experimental)
IDE Support
Designer-esque project layout in Eclipse
Code/Java editing with full classpath in Eclipse
DXL and XSP auto-complete in Eclipse and Visual Studio Code
WHAT IT DOES
42. ODP COMPILATION
Maven plugin to compile an ODP, optionally using
update sites and non-OSGi JARs
No Designer required!
Runs locally or using a remote Domino server
43. Equivalent to Designer’s “Associate with on-disk project” export
Maven plugin that exports from a local or remote database
Also no Designer required!
Runs locally or using a remote Domino server
ODP EXPORT
44. Deploys an NTF (usually a build result) to a remote Domino server
Still in progress, but works in certain setups
Will get better with work or with HCL making the replace-design API available
NTF DEPLOYMENT
45. IDE SUPPORT
Eclipse plugin to organize project contents in a way
similar to Designer
Configures the XPages portion to use Eclipse’s PDE
to resolve OSGi and embedded dependencies
Allows for working with Code/Java elements like
a normal Java project
46. DXL AND XSP AUTOCOMPLETE
Uses the official DXL schema that ships with Domino
Uses home-brewed schemas for the effectively-
static XPages components
Uses the XML Language Server implementation
shared between Eclipse and Visual Studio Code
And any future IDE that opts in!
48. Still chugging along
We switched to a “match the Domino release” strategy starting with R10
We release an update for the handful of new methods added each release
We also work in some bug fixes and improvements here and there
For the time being, it achieved its core goal and is intended to be slow-moving
ODA STATUS
49. NEXT WEBINAR
• June, 2020
• HCL’s Richard Jefts will provide an update on product
directions and strategy
• More details to come
• Stay informed at https://openntf.org/webinars