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.
Difference between revisions of "EclipseLink/UserGuide/MOXy/Runtime/Specifying the EclipseLink Runtime"
< EclipseLink | UserGuide | MOXy | Runtime
m |
|||
Line 10: | Line 10: | ||
}} | }} | ||
+ | = 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 EclipseLink's '''JAXBContextFactory''' as the factory used to build new '''JAXBContexts''': | |
− | + | <div><source lang="java"> | |
− | # Create a text file named | + | |
javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory | javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory | ||
</source></div> | </source></div> | ||
# Copy the file to the same package (directory) in which your model classes reside. | # Copy the file to the same package (directory) in which your model classes reside. | ||
− | # Use the standard | + | # Use the standard '''JAXBContext.newInstance(Class... classesToBeBound)''' API to create a '''JAXBContext''': |
+ | <div><source lang="java"> | ||
JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class); | JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class); | ||
</source></div> | </source></div> | ||
Line 25: | Line 26: | ||
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 JAXBContext= | + | = Instantiating a JAXBContext = |
− | The following methods on | + | The following methods on '''JAXBContext''' can be used to create new instances of '''JAXBContexts''': |
<source lang="java"> | <source lang="java"> | ||
Line 41: | Line 42: | ||
</source> | </source> | ||
− | * | + | * '''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. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + |
Revision as of 10:39, 10 June 2011
EclipseLink MOXy
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
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 EclipseLink's 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 JAXBContext
The following methods on JAXBContext can be used to create new instances of 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.