| 1 | = ebXML Service Layer = |
| 2 | |
| 3 | author: Heikki Doeleman |
| 4 | |
| 5 | This page describes GeoNetwork's implementation of a Service Layer to the ebXML Object Model. |
| 6 | [[BR]] |
| 7 | |
| 8 | ---- |
| 9 | |
| 10 | == Introduction == |
| 11 | |
| 12 | The Service Layer exposes various services to the outside world. This section describes these services along with how they are implemented. |
| 13 | |
| 14 | ---- |
| 15 | |
| 16 | == Web Services == |
| 17 | |
| 18 | Various services are exposed as Web Services, i.e. clients use them by making requests over the HTTP protocol. Two main Web Service interface styles are SOAP and REST; both use the HTTP protocol, but in the case of SOAP the message payload is wrapped in a SOAP Envelope, whereas in the case of REST the payload is either posted as-is, or expressed in GET parameters. In order to easily provide both interface styles we use the Web Services library [http://ws.apache.org/axis2/ Axis2]. |
| 19 | |
| 20 | For a description on how to use REST in addition to SOAP with Axis2, see [http://ws.apache.org/axis2/1_4_1/rest-ws.html RESTful Web Services Support]. |
| 21 | |
| 22 | For a description on how to use JiBX as the XML Binding framework with Axis2, see [http://ws.apache.org/axis2/1_4_1/jibx/jibx-codegen-integration.html JiBX Integration With Axis2]. |
| 23 | |
| 24 | |
| 25 | Design decisions: |
| 26 | |
| 27 | JiBX support in Axis2 mandates the use of the [http://www.ibm.com/developerworks/webservices/library/ws-whichwsdl/ Document/Literal] interface style. This still leaves choice between Document/Literal per se, and Wrapped Document/Literal. For a comparison of these two styles in Axis2-with-JiBX see [http://ws.apache.org/axis2/1_4_1/jibx/jibx-unwrapped-example.html here] and [http://ws.apache.org/axis2/1_4_1/jibx/jibx-doclit-example.html here]. My preference is for Wrapped Document/Literal but this remains to be decided. |
| 28 | |
| 29 | |
| 30 | ---- |