David Taieb contributed some time ago the project OSGi Tasklet Service for IBM Lotus Domino.

The project essentially allows extending the Domino server by writing OSGi/Java code as opposed to using the Domino C API toolkit. This makes the development of Domino extensions much easier and allows sharing and reuse of Java code.

The tasklet service (DOTS) runs in it's own process and JRE separate from the http process (XPages). Custom tasks can be deployed to DOTS as OSGi bundles and as for XPages extensions an NSF based update site can be used to store them.

DOTS tasks can be scheduled like agents in NSFs. The tasks can also execute long lasting operations. The Domino JDBC driver which includes a RMI server has also be implemented via DOTS. Additionally the triggers/events from the C API, e.g. EM_NSFNOTEUPDATEXTENDED, are also available. This allows for example writing social analytics tools that track how many times certain Notes documents have been modified/views/etc.

Here is a video describing the setup of DOTS, the setup of the IDE and some samples.

comments powered byDisqus