Purpose:An EclipseLink specific JAXBContextFactory. This class can be specified in a jaxb.properties file to make use of EclipseLink's JAXB 2.1 implementation.
Responsibilities:
- Create a JAXBContext from an array of Classes and a Properties object
- Create a JAXBContext from a context path and a classloader
This class is the entry point into in EclipseLink's JAXB 2.1 Runtime. It provides the required factory methods and is invoked by jakarta.xml.bind.JAXBContext.newInstance() to create new instances of JAXBContext. When creating a JAXBContext from a contextPath, the list of classes is derived either from an ObjectFactory class (schema-to-java) or a jaxb.index file (java-to-schema).
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Deprecated.As of release 2.4, replaced by JAXBContextProperties.ANNOTATION_HELPERstatic final String
Deprecated.As of release 2.4, replaced by JAXBContextProperties.DEFAULT_TARGET_NAMESPACEstatic final String
Deprecated.As of release 2.4, replaced by JAXBContextProperties.OXM_METADATA_SOURCEstatic final String
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic JAXBContext
createContext
(Class<?>[] classesToBeBound, Map<String, Object> properties) Create a JAXBContext on the array of Class objects.static JAXBContext
createContext
(Class<?>[] classesToBeBound, Map<String, Object> properties, ClassLoader classLoader) Create a JAXBContext on the array of Class objects.static JAXBContext
createContext
(Type[] typesToBeBound, Map<String, Object> properties, ClassLoader classLoader) Create a JAXBContext on the array of Type objects.static JAXBContext
createContext
(String contextPath, ClassLoader classLoader) Create a JAXBContext on context path.static JAXBContext
createContext
(String contextPath, ClassLoader classLoader, Map<String, Object> properties) Create a JAXBContext on context path.static JAXBContext
createContext
(TypeMappingInfo[] typesToBeBound, Map<String, Object> properties, ClassLoader classLoader) Create a JAXBContext on the array of TypeMappingInfo objects.static Map
<String, XmlBindings> getXmlBindingsFromProperties
(Map<String, Object> properties, ClassLoader classLoader) Convenience method for processing a properties map and creating a map of package names to XmlBindings instances.
-
Field Details
-
ECLIPSELINK_OXM_XML_KEY
Deprecated.As of release 2.4, replaced by JAXBContextProperties.OXM_METADATA_SOURCE- See Also:
-
DEFAULT_TARGET_NAMESPACE_KEY
Deprecated.As of release 2.4, replaced by JAXBContextProperties.DEFAULT_TARGET_NAMESPACE- See Also:
-
ANNOTATION_HELPER_KEY
Deprecated.As of release 2.4, replaced by JAXBContextProperties.ANNOTATION_HELPER- See Also:
-
PKG_SEPARATOR
- See Also:
-
-
Constructor Details
-
JAXBContextFactory
public JAXBContextFactory()
-
-
Method Details
-
createContext
public static JAXBContext createContext(Class<?>[] classesToBeBound, Map<String, Object> properties) throws JAXBExceptionCreate a JAXBContext on the array of Class objects. The JAXBContext will also be aware of classes reachable from the classes in the array.- Throws:
JAXBException
-
createContext
public static JAXBContext createContext(Class<?>[] classesToBeBound, Map<String, Object> properties, ClassLoader classLoader) throws JAXBExceptionCreate a JAXBContext on the array of Class objects. The JAXBContext will also be aware of classes reachable from the classes in the array.- Throws:
JAXBException
-
createContext
public static JAXBContext createContext(String contextPath, ClassLoader classLoader) throws JAXBException Create a JAXBContext on context path. The JAXBContext will also be aware of classes reachable from the classes on the context path.- Throws:
JAXBException
-
createContext
public static JAXBContext createContext(String contextPath, ClassLoader classLoader, Map<String, Object> properties) throws JAXBExceptionCreate a JAXBContext on context path. The JAXBContext will also be aware of classes reachable from the classes on the context path.- Throws:
JAXBException
-
createContext
public static JAXBContext createContext(Type[] typesToBeBound, Map<String, Object> properties, ClassLoader classLoader) throws JAXBExceptionCreate a JAXBContext on the array of Type objects. The JAXBContext will also be aware of classes reachable from the types in the array. The preferred means of creating a Type aware JAXBContext is to create the JAXBContext with an array of TypeMappingInfo objects.- Throws:
JAXBException
-
createContext
public static JAXBContext createContext(TypeMappingInfo[] typesToBeBound, Map<String, Object> properties, ClassLoader classLoader) throws JAXBExceptionCreate a JAXBContext on the array of TypeMappingInfo objects. The JAXBContext will also be aware of classes reachable from the types in the array. This is the preferred means of creating a Type aware JAXBContext.- Throws:
JAXBException
-
getXmlBindingsFromProperties
public static Map<String,XmlBindings> getXmlBindingsFromProperties(Map<String, Object> properties, ClassLoader classLoader) Convenience method for processing a properties map and creating a map of package names to XmlBindings instances.
It is assumed that the given map's key will be JAXBContextProperties.OXM_METADATA_SOURCE, and the value will be:
1) Map<String, Object> - Object is one of those listed in 3) below 2) List<Object> - Object is one of those listed in 3) below - Bindings file must contain package-name attribute on xml-bindings element 3) One of: - java.io.File - java.io.InputStream - java.io.Reader - java.lang.String - java.net.URL - javax.xml.stream.XMLEventReader - javax.xml.stream.XMLStreamReader - javax.xml.transform.Source - org.eclipse.persistence.jaxb.metadata.MetadataSource - org.w3c.dom.Node - org.xml.sax.InputSource - Bindings file must contain package-name attribute on xml-bindings element
-