This project has been merged into Social Enabler.
REST services and JSON have become more and more popular. Providing REST/JSON services opens up new capabilities to consume XPages application functionality in other types of applications. Additionally existing Dojo UI controls can be used and data can easily be bound to them. Furthermore the clean separation of the services and data on one hand side and the UI/markup on the other hand side allows easy caching and enables offline capabilities.
This project shows simple samples for how to handle JSON.
The XPages runtime comes with it's own JSON Library (e.g. com.ibm.commons.util.io.json.JsonJavaFactory) allowing the implementation of REST services using JSON. The XPages Extension Library includes already REST services for view entries. This project shows how to provide custom REST services for data from somewhere else (in this case from one document) and it shows how to do this without the extension library as prereq. While the mechanism in the extension library is more sophisticated, this sample shows a pragmatic interim solution.
The project also shows how to consume the REST/JSON services on client side. One XPage shows how to get the output of a service call in a JavaScript object.
Another XPage shows how to bind a REST service to a Dojo data grid control. This control can be populated via a REST GET requests. Furthermore cell values can be changed and be written back via REST PUT requests.
There are several resources available describing REST, JSON and Dojo: here, here, here, here, here and here.