Difference between revisions of "EclipseLink/UserGuide/MOXy/Runtime/Specifying the EclipseLink Runtime"

From Eclipsepedia

Jump to: navigation, search
(Instantiating a DynamicJAXBContext)
Line 1: Line 1:
 
{{EclipseLink_UserGuide
 
{{EclipseLink_UserGuide
|info=y
 
|api=y
 
|apis= * [http://www.eclipse.org/eclipselink/api/2.1/index.html?org/eclipse/persistence/jaxb/JAXBContextFactory.html *.jaxb.JAXBContextFactory]
 
 
|eclipselink=y
 
|eclipselink=y
 
|eclipselinktype=MOXy
 
|eclipselinktype=MOXy
}}
+
|info=y
 +
|api=y
 +
|apis= * [http://www.eclipse.org/eclipselink/api/latest/org/eclipse/persistence/jaxb/JAXBContextFactory.html JAXBContextFactory]
 +
|toc=y
 +
 
  
 
=Specifying the EclipseLink Runtime=
 
=Specifying the EclipseLink Runtime=

Revision as of 12:57, 6 January 2011

{{EclipseLink_UserGuide |eclipselink=y |eclipselinktype=MOXy |info=y |api=y |apis= * JAXBContextFactory |toc=y


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.

  1. 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
  2. Copy the file to the same package (directory) in which your model classes reside.
  3. 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.


Eclipselink-logo.gif
Version: 2.2.0 DRAFT
Other versions...