This was the project page used while designing the Webservices.rest Module. See that module's documentation for the most up-to-date information
OpenMRS has an explicit API which has not been cleanly or explicitly exposed through web services. We have a REST module and SOAP-based module(s) where folks have done work in the area. We need a clear and explicit strategy for supporting web services.
- A single OpenMRS module to support the core web service needs.
- This module will follow a RESTful approach
- The framework should allow new web service methods to be added with minimal effort
- At this point, we can leave the Java objects with Hibernate magic (all object properties assumed to exist) and convert the data to DTOs from our module. These DTOs may inform how we transform our API in the future though.
- Requirements for Version 1 of this module
API Service and Object Design
- Web services will be developed as an augmentation to the existing API... that is, we will not rewrite the current API and then expose them as web services... we will write the web services as an independent activity, hoping that they inform the further maintenance and redevelopment of the existing API.
- Support OAuth or an equivalent authentication scheme
- An upcoming web services sprint is scheduled. See Development Sprints and the ws sprint page: 2011-05-16 Development Sprint
Interested Parties and Mentors
Ben Wolfe (mentor)
- Web Services
- SOAP Web Services
- Web Services for OMRS10
- We did an initial prototype of this using the CXF framework before deciding to build RESTful services. That work is at: Webservices.cxf Module
Result / Output
See the REST Module for the documentation and final output.