The lexs-ws-5.0-flex-split project provides a starting point for implementers looking to develop Java based LEXS 5.0 SOAP web service endpoints that follow the LEXS 5.0 split-metadata SSPs. It uses JAXB to generate Java object bindings and JAXWS to implement the web service.
The JAXB bindings are generated using subset of the LEXS 5.0 schemas modified to only contain the top level message elements. Unlike the official LEXS 5.0 schemas, these schemas are modified so the top level LEXS 5.0 message elements contain content placeholders(xsd:any) as their child element rather than specific LEXS 5.0 elements. This design decision provides great flexibility in the use of the Java binding objects.
The SOAP web service endpoints are generated by JAXWS using WSDL files that follow the LEXS 5.0 split-metadata SSPs. The WSDL files use the modified LEXS 5.0 schemas, mentioned above, to build the Java binding objects.
This project only provides endpoints that follow the split-metadata SSPs to demonstrate the case where LEXS metadata is split between the SOAP header and body.
The application provides skeleton code for endpoints to handle a subset of the LEXS 5.0 messages. The following table shows the LEXS 5.0 requests accepted by the application and the responses it returns.
The endpoints for the accepted requests will always return the same response. The goal of this implementation is to provide an example of how to generate endpoints that follow the LEXS 5.0 split SSPs, and show how to manipulate the LEXS metadata in the SOAP header. It is not meant to show how to process the incoming LEXS message. Processing of the incoming SOAP message is left as an exercise for the implementer.
- JAVA 1.8
- JAXB 2.2.7
- JAXWS 2.2.7
- Maven 3
To work with Java 8 you will need to add jaxp.properties file in the <JAVA_HOME>/jre/lib directory. In that file add the following: javax.xml.accessExternalSchema = all
Use maven to build the project
mvn clean install
The target directory will contain the file lexs-ws-jaxws-service.war that you can deploy on your web application server.
How to view WSDLs on the Webserver
Deploy war file to web application server Use SoapUI project to tests /src/test/resources/LEXS-5-0-Flex-soapui-project.xml