Pranav Kuber and Nizar Lethif are developers in the CSI and PIM teams. They've implemented an interesting prototype that shows how to run and integrate with XUL applications in Notes 8 (with some additional plugin from Sametime). They've also planned to write a developerworks article with more information about how exactly they've implemented this. The description below is from Pranav and Nizar.
This article discusses how existing applications written in XUL (XML User-interface Language) can participate in the Composite Application Infrastructure. As an effort to address this, we implemented a new container which should be generic enough to embed any application which can be rendered in a browser. So far, we have implemented this container framework to support XUL.
Some useful XUL links:
The container creates an instance of the com.ibm.swt.xulrunner.browser.SWTXULRunnerBrowser browser and registers the properties with the Property Broker.
The com.ibm.swt.xulrunner.browser.SWTXULRunnerBrowser plug-in is available as a part of Sametime 7.5.1.
The Sametime installable will be available at http://www.ibm.com/developerworks/downloads/ls/lst
Currently, the com.ibm.swt.xulrunner.browser.SWTXULRunnerBrowser is not part of the Notes 8.0 plug-ins.
The developer of the CA specifies the following:
In order to demonstrate a working implementation, we created a XUL application which uses the ThinkPlace APIs to extract ideas and display them in a table.
ThinkPlace is a collaborative tool that allows IBM employees to surface opportunities to grow our business, identify solutions to critical client business needs and offer ideas for process improvements that will enhance IBM's culture or make us more competitive in the marketplace.
The APIs exposed by ThinkPlace are REST APIs.
More information on REST APIs: http://en.wikipedia.org/wiki/Representational_State_Transfer
(Refer to the screen shot below).
The Composite Application is created with one of the components as the XUL application above and the other, a notes database. When we click on the “Search ThinkPlace” button, a property event is fired (search).
Refer to the screen shots of the application
1. The application, onload.
2. After clicking on the "Search ThinkPlace" button.
As of now, this container supports property event subscription only. We are still working on a generic solution for property event publish.
Nizar Lethif (email@example.com)
Pranav Kuber (firstname.lastname@example.org)
More specific implementation details will be made available in the Developer Works article.