This is an old revision of the document!
For some time now there is the trend for packaging REST services into a fat executable ready to deploy anywhere without much or any configuration. Dropwizard is such a project. It takes best of breed stuff to create an easy to use platform for developing REST services.
Developing REST services on the IBM i server has been very hard and/or complicated. Creating such a platform would ease the integration of the IBM i platform into the rest of the IT application infrastructure.
Each Dropwizard instance should reside in a separate library. This way we can have duplicate objects on the system but in separate libraries. Each start job should have a configured library list.
A HTTP Server needs to be embedded.
One of these http servers need to be ported to the IBM i platform and compiled to an ILE module.
Nothing to do here because every job on the IBM i has a native database connection.
Configuration should be dead simple.
Normally a stream file in the IFS would be used for storing the configuration of the server/service. But most IBM i people are not comfortable with using the IFS because they haven't used it on a regular basis (or not at all).
Another option would be a data area (as long as the configuration is not too big/complex).
Simple database file
CONFIG with two fields (key, value).
Special MiWorkplace Plugin for Dropwizard for editing configuration values. Form Editor.
For simple REST services a template engine would easy the development of REST services a lot.