Configuring JAXB with JDK 9 or higher
The IMS Universal drivers leverage JAXB, part of the java.se.ee.module for XML parsing. If you are using JDK 9 or higher, add JAXB to the classpath to enable full functionality of IMS Universal drivers.
JAXB is an XML to Java binding technology that supports transformation between schema and Java objects and between XML instance documents and Java object instances. JAXB consists of a runtime application programming interface (API) and accompanying tools that simplify access to XML documents. JAXB also helps to build XML documents that both conform and validate to the XML schema. Java API for XML-Based Web Services (JAX-WS) leverages the JAXB API and tools as the binding technology for mappings between Java objects and XML documents. JAX-WS tooling relies on JAXB tooling for default data binding for two-way mappings between Java objects and XML documents.
JAXB is required by the IMS Universal drivers for processing the XML metadata obtained locally or from IMS Catalog.
If you are configuring JAXB using JDK 9 or later, please note that the Java EE and CORBA modules are deprecated in JDK 9 and 10, and are removed completely in JDK 11 and later. Enabling any deprecated modules within the JDK itself is not recommended.
Adding JAXB in a Java Project in Eclipse
All applications leveraging IMS Universal drivers need the following JARS added to their classpath:
- https://mvnrepository.com/artifact/javax.activation/activation/1.1.1
- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api/2.3.1
- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-osgi/2.3.1
Adding JAXB in a Maven project
The following dependencies are required if you are using a Maven project:
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
The following JVM argument is required both in the case of Eclipse and Maven:
-Djavax.xml.bind.context.factory=com.sun.xml.bind.v2.ContextFactory