Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


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.

Request Response
domainRequest domainResponse
doPublishAcknowledgedRequest doPublishAcknowledgedResponse
doStructuredSearchRequest doSearchResponse
doTextSearchRequest doSearchResponse
RenewRequest RenewResponse

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.

Techologies Used

  • JAVA 1.8
  • JAXB 2.2.7
  • JAXWS 2.2.7
  • Maven 3


To work with Java 8 you will need to add file in the <JAVA_HOME>/jre/lib directory. In that file add the following: javax.xml.accessExternalSchema = all

To Build

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

  • http://SERVER_NAME:8080/lexs-ws-jaxws-service/services/de?wsdl
  • http://SERVER_NAME:8080/lexs-ws-jaxws-service/services/pd?wsdl
  • http://SERVER_NAME:8080/lexs-ws-jaxws-service/services/sr?wsdl
  • http://SERVER_NAME:8080/lexs-ws-jaxws-service/services/snsm?wsdl

To Test

Deploy war file to web application server Use SoapUI project to tests /src/test/resources/LEXS-5-0-Flex-soapui-project.xml


A LEXS 5.0 sample implementation that shows how to split metadata between the SOAP header and body.



No releases published


No packages published


You can’t perform that action at this time.