This demo is a product of the article Creating RESTful IBM Lotus Domino applications in a Web 2.0 world with Project Zero. It was included in the AD409 session as a means of explaining how we can surface and interact with Domino data using a REST approach. The use case is a "employee contact application" which re-uses the contact information found in the Domino names and address book.
A high level breakdown of a "Domino sMash application" can be thought of as follows:
- Obtain an authenticated Domino web session using LTPAToken (MSSO). Send appropriate HTTP method with representation (JSON, XML, etc) header request.
- Use LTPAToken to create a Notes session for data manipulation.
- Perform high level operations to map incoming HTTP method and requested resource in .groovy function. Set up any backend helper methods used.
- Interact with requested resource using Notes.jar Java classes in helper method or directly from .groovy function.
- Finally render the Domino resource or custom data type to the client allowing sMash's custom converter to provide the requested representation.
So then what ... well, since the pattern is applicable to data in no specific form, you can begin to surface any Domino data from sMash. Once that data is accessible, any number of consumers can then use it. See the following screenshot from AD409.
Already on my to do list is to follow up with Domino developers on any plans for a "REST layer" to syndicate Domino data ...[Read More]