Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Examples/MOXy/Spring/JAXBAnnotations
In order to use EclipseLink JAXB with Spring, all that is required is a jaxb.properties
file and eclipselink.jar
. No other special configuration is required. This example will demonstrate how to configure Spring to use EclipseLink JAXB.
Contents
EclipseLink
The latest version of EclipseLink can be found on the EclipseLink download page. eclipselink.jar
needs to be on the classpath.
jaxb.properties
Following is the jaxb.properties
file that tells Spring to use EclipseLink JAXB - this file needs to be on the classpath:
javax.xml.bind.context.factory = org.eclipse.persistence.jaxb.JAXBContextFactory
Jaxb2Marshaller
Spring supports both the JAXB 1.0 and the JAXB 2.0 API as XML marshalling strategies. EclipseLink JAXB implements JAXB 2, so for this example we will make use of the org.springframework.oxm.jaxb.Jaxb2Marshaller
class.
Configuration: applicationContext.xml
This configuration file will be used to configure the beans used in this example.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="jaxbMarshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller"> <property name="contextPath" value="example.gettingstarted"/> </bean> <bean id="xmlHelper" class="example.gettingstarted.XMLHelper"> <property name="marshaller" ref="jaxbMarshaller"/> </bean> </beans>