JAddin Framework
Java Toolkit for developers writing HCL Domino Server Add-ins

Introduction

The free and open-source JAddin framework acts as a thin and easy to use layer between the HCL Domino RunJava task and your Java application code. It helps you to create Java server tasks by freeing you to learn all the HCL Domino add-in specifics, such as message queue handling, thread creation, communication with the console, resource cleanup, etc. It is written entirely in Java to support all HCL Domino versions and platforms (HCL Domino 9.0.1 FP8 and above).

Code Example

1
public class HelloWorld extends JAddinThread {
2
​
3
// This is the main entry point. When this method returns, the add-in terminates.
4
public void addinStart() {
5
6
logMessage("Started with parameters " + getAddinParameters());
7
8
try {
9
logMessage("Running on " + dbGetSession().getNotesVersion());
10
} catch (Exception e) {
11
logMessage("Unable to get Domino version: " + e.getMessage());
12
}
13
​
14
// Main add-in loop ...
15
while (true) {
16
logMessage("User code is executing ...");
17
waitMilliSeconds(15000L);
18
}
19
}
20
​
21
// This callback method is called by the JAddin framework when the
22
// command 'Quit' or 'Exit' is entered or at Domino server shutdown. Here
23
// you may signal the addinStart() method to terminate and to perform any cleanup.
24
public void addinStop() {
25
logMessage("Termination in progress");
26
}
27
28
// This callback method is called by the JAddin framework for any
29
// console command entered. It should be executed as quickly as possible
30
// to avoid any main Domino message queue delays.
31
public void addinCommand(String command) {
32
logMessage("You have entered the command " + command);
33
}
34
}
Copied!

HCL Domino Console

1
> Load RunJava JAddin HelloWorld
2
03.02.2019 09:31:47 JVM: Java Virtual Machine initialized.
3
03.02.2019 09:31:47 RunJava: Started JAddin Java task.
4
03.02.2019 09:31:47 HelloWorld: Started with parameters null
5
03.02.2019 09:31:47 HelloWorld: Running on Release 10.0.1 November 29, 2018
6
03.02.2019 09:31:47 HelloWorld: User code is executing...
7
03.02.2019 09:32:02 HelloWorld: User code is executing...
8
03.02.2019 09:32:17 HelloWorld: User code is executing...
9
03.02.2019 09:32:32 HelloWorld: User code is executing...
Copied!

Prerequisites

  • HCL Domino 9.0.1 FP8 or higher (Java Virtual Machine 1.8+ requirement)

Author

This framework was created to help implementing projects which required the use of HCL Domino server add-ins. If you encounter any issue or if you have a suggestion, please let me know.
You may contact me thru my email address [email protected].

Unlicense (see unlicense.org)

Created with love and passion in the beautiful country of πŸ‡¨πŸ‡­ Switzerland. This software shall be used for Good not Evil. As far as I know, no animal was harmed in the making of this software 😊
Last modified 10mo ago