Here are the steps to create a debug environment:1. Create a new plug-in project in Eclipse2. Add the required plug-in dependencies 3. Implement your plug-in code4. Configure the plug-in manifest file5. Add debug launch configurations6. Deploy the plug-in to your Domino server7. Debug the plug-in by running the launch configurationThis allows you to set breakpoints, step through code, inspect variables etc while the plug-in is running on the server
BP207 - Meet the Java Application Server You Already Own – IBM Domino
Semelhante a Here are the steps to create a debug environment:1. Create a new plug-in project in Eclipse2. Add the required plug-in dependencies 3. Implement your plug-in code4. Configure the plug-in manifest file5. Add debug launch configurations6. Deploy the plug-in to your Domino server7. Debug the plug-in by running the launch configurationThis allows you to set breakpoints, step through code, inspect variables etc while the plug-in is running on the server
Semelhante a Here are the steps to create a debug environment:1. Create a new plug-in project in Eclipse2. Add the required plug-in dependencies 3. Implement your plug-in code4. Configure the plug-in manifest file5. Add debug launch configurations6. Deploy the plug-in to your Domino server7. Debug the plug-in by running the launch configurationThis allows you to set breakpoints, step through code, inspect variables etc while the plug-in is running on the server (20)
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Here are the steps to create a debug environment:1. Create a new plug-in project in Eclipse2. Add the required plug-in dependencies 3. Implement your plug-in code4. Configure the plug-in manifest file5. Add debug launch configurations6. Deploy the plug-in to your Domino server7. Debug the plug-in by running the launch configurationThis allows you to set breakpoints, step through code, inspect variables etc while the plug-in is running on the server
2. About me
midpoints GmbH
http://www.midpoints.de
IBM Advanced Business Partner
IBM Design Partner for Domino Next
IBM Mobile Design Partner
Apple Enterprise Developer & MDM Program
Services
• Notes / Domino Consulting
• E-Mail Management
• App Development (IBM Connections, RCP,
XPages, mobile)
We mobilize Notes
René Winkelmeyer • Lotus Traveler planning & deployment
Senior Consultant
• mobile app development
• Apple iOS Device Management
• Secure mobile content delivery
OpenNTF Contributor and OpenNTF Director
=> File Navigator: http://filenavigator.openntf.org
=> XSnippets: http://xsnippets.openntf.org
2
4. Agenda
What will be talk about?
- Differences XPages, Extension Library and Extensibility API
- Starting with Plug-In-Development
- Code examples
- Deployment
4
5. Agenda
What will be talk about?
- Differences XPages, Extension Library and Extensibility API
- Starting with Plug-In-Development
- Code examples
- Deployment
5
6. XPages
XPages is a great technlogy and expands our possibilities – from the
point of administrators, developers and users.
Starting with XPages could be really simple. For the very first steps
is just drag‘n‘drop, computing stuff and so on.
To be honest: Domino web development never was so easy (after
you‘ve learned the basics).
6
8. XPages / XPages Extension Library
There are some things which aren‘t so easy...
You are missing controls in the pallette
OneUI ist too complex
You want some custom rendering
...
Here the XPages Extension Library comes to your help.
8
10. XPages Extension Library
IBM has introduced the XPages Extensibility API with Notes/Domino
8.5.2.
This API is a set of Java classes and methods which allow to
integrate specialised functionality directly into XPages.
This means XPages in the browser and XPages in the Notes client.
IBM has used this API to provide the well-known XPages Extension
Library – (first) on OpenNTF and than as part of the core product!
10
13. XPages Extension Library
It‘s part of Notes/Domino 8.5.3 as „Upgrade Pack 1“ – full product
support through IBM!
Part number: CI5GIEN
Watch out: If you want to use the Upgrade Pack 1 you‘ll have to
uninstann previous versions of the OpenNTF Extension Library.
IBM installs the UP1 in the program directory. The OpenNTF
components are installed in the data directory.
Currently only available as Installer – not as Updatesite.
13
15. XPages Extensibility API
It only makes sense to develop your own extensions if you need the
same functionality across multiple applications.
An extension (aka OSGi Plug-In) needs only to deployed once per
server or client – not per application.
http://www.osgi.org <= start here
15
16. XPages Extensibility API
So called „artefacts“ can be added to the existing API during
runtime.
JSF is an „open standard“ which APIs are publically available.
The XPages APIs are public since Domino 8.5.2.
Artefacts can be:
UI Controls
Converters
Validators
Data Sources
Simple Actions
Language Bindings
...
16
18. XPages API Concepts
XPages Library
OSGi bundle, contains Java code, configuration files
Controls
Components which are available in the Designer pallette
Renderer
Renderer are responsible for displaying the output (HTML, CSS, ...)
Complex Types
Those are i. e. used to create encapsulated functions or store data.
18
19. Agenda
What will be talk about?
- Differences XPages, Extension Library and Extensibility API
- Starting with Plug-In-Development
- Code examples
- Deployment
19
24. Development setup
For keeping it simple: use the OpenNTF project „XPages SDK for
Eclipse RCP.
Nathan T. Freeman:
http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocum
ent&name=XPages%20SDK%20for%20Eclipse%20RCP
24
40. Development setup
You shouldn‘t develop without debugging. So we‘re installing a
debugger.
We are using the OpenNTF Domino Debug Plug-In.
http://www.openntf.org/internal/home.nsf/release.xsp?documentId=CBF
874E9C4607B4C8625799D00287B8C&action=openDocument
40
52. Development setup
Add the following notes.ini parameters to the locally installed
Domino server (they are needed for the remote debugging)
JAVADEBUGOPTIONS=transport=dt_socket,server=y,suspend=n,addr
ess=8000
JAVAENABLEDEBUG=1
52
53. Agenda
What will be talk about?
- Differences XPages, Extension Library and Extensibility API
- Starting with Plug-In-Development
- Code examples
- Deployment
53
54. Code examples
A simple UIComponent created with the XPages Extensibility API
54
55. General library structure
Java files
Controls
javax.faces.component.UIComponent
Base for all UI components
Renderers
javax.faces.render.Renderer
Writes the output to the browser
Configuration files
faces-config.xml
Runtime JSF configuration, defines i. e. the renderer
.xsp-config
Defines the controls, is used to display within Designer and for compiling the
XPages
plugin.xml
Adding the extensions
55
77. Agenda
What will be talk about?
- Differences XPages, Extension Library and Extensibility API
- Starting with Plug-In-Development
- Code examples
- Deployment
77
78. Deployment Domino-Server
Create a new database/application based on the Updatesite
template. I highly recommend to use a dedicated database for
server-only plug-ins.
Import the plug-ins into the database.
Replicate the database with all according servers.
Plug-Ins couldn‘t be replicated as the „normally“ reside on the file
system.
Set the notes.ini parameter
OSGI_HTTP_DYNAMIC_BUNDLES=<datenbank.nsf> on the
Domino servers.
Finished. Restart the http and that‘s all.
78