Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EclipseLink/UserGuide/MOXy/Runtime/Specifying the EclipseLink Runtime"
< EclipseLink | UserGuide | MOXy | Runtime
Line 20: | Line 20: | ||
Because you do not need to change any application code, you can easily switch between different JAXB implementations. | Because you do not need to change any application code, you can easily switch between different JAXB implementations. | ||
+ | |||
+ | =Instantiating a DynamicJAXBContext= | ||
The following methods on <tt>JAXBContextFactory</tt> can be used to create <tt>JAXBContexts</tt>: | The following methods on <tt>JAXBContextFactory</tt> can be used to create <tt>JAXBContexts</tt>: |
Revision as of 12:54, 6 January 2011
EclipseLink MOXy
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
Specifying the EclipseLink Runtime
In order to use EclipseLink MOXy as your JAXB implementation, you must identify the EclipseLink JAXBContextFactory in your jaxb.properties file.
- Create a text file named jaxb.properties, specifying JAXBContextFactory as the factory used to build new JAXBContexts.
javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory
- Copy the file to the same package (directory) in which your model classes reside.
- Use the standard JAXBContext.newInstance(Class... classesToBeBound) API to create a JAXBContext.
JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class);
Because you do not need to change any application code, you can easily switch between different JAXB implementations.
Instantiating a DynamicJAXBContext
The following methods on JAXBContextFactory can be used to create JAXBContexts:
public static JAXBContext newInstance(Class... classesToBeBound) throws JAXBException public static JAXBContext newInstance(Class[] classesToBeBound, Map<String,?> properties) throws JAXBException public static JAXBContext newInstance(String contextPath) throws JAXBException public static JAXBContext newInstance(String contextPath, ClassLoader classLoader) throws JAXBException public static JAXBContext newInstance(String contextPath, ClassLoader classLoader, Map<String,?> properties) throws JAXBException
- classesToBeBound - List of Java classes to be recognized by the new JAXBContext.
- contextPath - List of Java package names that contain mapped classes.
- classLoader - The class loader used to locate the mapped classes.
- properties - A map of additional properties.