Package org.eclipse.persistence.oxm
Class XMLMarshaller
- java.lang.Object
-
- org.eclipse.persistence.internal.oxm.Marshaller<CHARACTER_ESCAPE_HANDLER,CONTEXT,MARSHALLER_LISTENER,MEDIA_TYPE,NAMESPACE_PREFIX_MAPPER>
-
- org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
-
- org.eclipse.persistence.oxm.XMLMarshaller
-
- All Implemented Interfaces:
java.lang.Cloneable
public class XMLMarshaller extends org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession> implements java.lang.Cloneable
Class used to marshal object to XML.
Create an XMLMarshaller from an XMLContext.
Code Sample
XMLContext context = new XMLContext("mySessionName");
XMLMarshaller marshaller = context.createMarshaller();
Objects can be marshalled to the following outputs:
- java.io.OutputStream
- java.io.Writer
- javax.xml.transform.Result
- org.w3c.dom.Node
- org.xml.sax.ContentHandler
Objects that can be marshalled are those which are mapped in the TopLink project associated with the XMLContext, and which are mapped to an XMLDescriptor that has a default root element specified.
- See Also:
XMLContext
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.oxm.XMLMarshaller
attachmentMarshaller, DEFAULT_XML_VERSION, domToEventWriterClass, domToStreamWriterClass, mediaType, staxResultClass, staxResultGetEventWriterMethod, staxResultGetStreamWriterMethod, transformer, writeToEventWriterMethod, writeToStreamMethod
-
-
Constructor Summary
Constructors Modifier Constructor Description XMLMarshaller(XMLContext xmlContext)
Create a new XMLMarshaller based on the specified sessionprotected
XMLMarshaller(XMLMarshaller xmlMarshaller)
Copy constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description XMLMarshaller
clone()
CharacterEscapeHandler
getCharacterEscapeHandler()
Return this Marshaller's CharacterEscapeHandler.protected XMLDescriptor
getDescriptor(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractSession session, boolean isXMLRoot)
org.eclipse.persistence.internal.oxm.JsonTypeConfiguration
getJsonTypeConfiguration()
Returns json type configuration.XMLMarshalListener
getMarshalListener()
MediaType
getMediaType()
Get the MediaType for this xmlMarshaller.NamespacePrefixMapper
getNamespacePrefixMapper()
NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)protected org.w3c.dom.Node
getNode(java.lang.Object object, org.w3c.dom.Node parentNode, org.eclipse.persistence.internal.sessions.AbstractSession session, XMLDescriptor xmlDescriptor, boolean isXMLRoot)
java.util.Properties
getProperties()
Return a properties object for a given instance of the XMLMarshaller.XMLContext
getXMLContext()
Return the instance of XMLContext that was used to create this instance of XMLMarshaller.void
marshal(java.lang.Object object, javax.xml.transform.Result result)
PUBLIC: Convert the given object to XML and update the given result with that XML Documentprotected void
marshal(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractSession session, MarshalRecord marshalRecord)
Convert the given object to XML and update the given marshal record with that XML Document.protected org.w3c.dom.Document
objectToXML(java.lang.Object object, XMLDescriptor descriptor, boolean isXMLRoot)
INTERNAL: Convert the given object to an XML Documentorg.w3c.dom.Document
objectToXML(java.lang.Object object, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
INTERNAL: Convert the given object to an XML Documentorg.w3c.dom.Document
objectToXML(java.lang.Object object, org.w3c.dom.Node parent)
Deprecated.org.w3c.dom.Document
objectToXML(java.lang.Object object, org.w3c.dom.Node parent, DocumentPreservationPolicy docPresPolicy)
org.w3c.dom.Document
objectToXML(java.lang.Object object, org.w3c.dom.Node rootNode, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
protected org.w3c.dom.Node
objectToXMLNode(java.lang.Object object, org.w3c.dom.Node rootNode, org.eclipse.persistence.internal.sessions.AbstractSession session, XMLDescriptor descriptor, boolean isXMLRoot)
void
setCharacterEscapeHandler(CharacterEscapeHandler c)
Set this Marshaller's CharacterEscapeHandler.void
setMarshalListener(XMLMarshalListener listener)
void
setMediaType(MediaType mediaType)
Set the MediaType for this xmlMarshaller.void
setNamespacePrefixMapper(NamespacePrefixMapper mapper)
NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)void
setXMLContext(XMLContext value)
Set the XMLContext used by this instance of XMLMarshaller.void
setXMLMarshalHandler(XMLMarshalListener marshalListener)
-
Methods inherited from class org.eclipse.persistence.internal.oxm.XMLMarshaller
addDescriptorNamespacesToXMLRecord, copyNamespaces, getAttachmentMarshaller, getAttributePrefix, getDescriptor, getDescriptor, getDescriptor, getDescriptor, getDescriptor, getDescriptor, getMarshalAttributeGroup, getNamespaceSeparator, getNoNamespaceSchemaLocation, getSchema, getSchemaLocation, getTransformer, getValueWrapper, getXmlHeader, isApplicationJSON, isApplicationXML, isFragment, isIncludeRoot, isLogPayload, isMarshalEmptyCollections, isReduceAnyArrays, isSimpleXMLRoot, isWrapperAsCollectionName, marshal, marshal, marshal, marshal, marshal, marshal, marshal, objectToXML, objectToXMLNode, setAttachmentMarshaller, setAttributePrefix, setEncoding, setFormattedOutput, setFragment, setIncludeRoot, setLogPayload, setMarshalAttributeGroup, setMarshalEmptyCollections, setNamespaceSeparator, setNoNamespaceSchemaLocation, setReduceAnyArrays, setSchema, setSchemaLocation, setValueWrapper, setWrapperAsCollectionName, setXmlHeader
-
-
-
-
Constructor Detail
-
XMLMarshaller
public XMLMarshaller(XMLContext xmlContext)
Create a new XMLMarshaller based on the specified session- Parameters:
xmlContext
- the XML content
-
XMLMarshaller
protected XMLMarshaller(XMLMarshaller xmlMarshaller)
Copy constructor
-
-
Method Detail
-
getXMLContext
public XMLContext getXMLContext()
Return the instance of XMLContext that was used to create this instance of XMLMarshaller.
-
setXMLContext
public void setXMLContext(XMLContext value)
Set the XMLContext used by this instance of XMLMarshaller.
-
getProperties
public java.util.Properties getProperties()
Return a properties object for a given instance of the XMLMarshaller.- Returns:
-
setXMLMarshalHandler
public void setXMLMarshalHandler(XMLMarshalListener marshalListener)
-
marshal
public void marshal(java.lang.Object object, javax.xml.transform.Result result) throws XMLMarshalException
PUBLIC: Convert the given object to XML and update the given result with that XML Document- Overrides:
marshal
in classorg.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
- Parameters:
object
- the object to marshalresult
- the result to marshal the object to- Throws:
XMLMarshalException
- if an error occurred during marshalling
-
getNode
protected org.w3c.dom.Node getNode(java.lang.Object object, org.w3c.dom.Node parentNode, org.eclipse.persistence.internal.sessions.AbstractSession session, XMLDescriptor xmlDescriptor, boolean isXMLRoot)
- Overrides:
getNode
in classorg.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
-
getMarshalListener
public XMLMarshalListener getMarshalListener()
- Overrides:
getMarshalListener
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
-
setMarshalListener
public void setMarshalListener(XMLMarshalListener listener)
- Overrides:
setMarshalListener
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
-
marshal
protected void marshal(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractSession session, MarshalRecord marshalRecord)
Convert the given object to XML and update the given marshal record with that XML Document.- Parameters:
object
- the object to marshalmarshalRecord
- the marshalRecord to marshal the object to
-
objectToXML
protected org.w3c.dom.Document objectToXML(java.lang.Object object, XMLDescriptor descriptor, boolean isXMLRoot) throws XMLMarshalException
INTERNAL: Convert the given object to an XML Document- Overrides:
objectToXML
in classorg.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
- Parameters:
object
- the object to marshaldescriptor
- the XMLDescriptor for the object being marshalled- Returns:
- the document which the specified object has been marshalled to
- Throws:
XMLMarshalException
- if an error occurred during marshalling
-
objectToXMLNode
protected org.w3c.dom.Node objectToXMLNode(java.lang.Object object, org.w3c.dom.Node rootNode, org.eclipse.persistence.internal.sessions.AbstractSession session, XMLDescriptor descriptor, boolean isXMLRoot) throws XMLMarshalException
- Overrides:
objectToXMLNode
in classorg.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
- Throws:
XMLMarshalException
-
objectToXML
@Deprecated public org.w3c.dom.Document objectToXML(java.lang.Object object, org.w3c.dom.Node parent) throws XMLMarshalException
Deprecated.PUBLIC: Convert the given object to descendants of the parent element- Parameters:
object
- the object to marshalparent
- the node to marshal the object to- Returns:
- the document which the specified object has been marshalled to
- Throws:
XMLMarshalException
- if an error occurred during marshalling
-
objectToXML
public org.w3c.dom.Document objectToXML(java.lang.Object object, org.w3c.dom.Node parent, DocumentPreservationPolicy docPresPolicy)
-
objectToXML
public org.w3c.dom.Document objectToXML(java.lang.Object object, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
INTERNAL: Convert the given object to an XML Document
-
objectToXML
public org.w3c.dom.Document objectToXML(java.lang.Object object, org.w3c.dom.Node rootNode, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
-
getDescriptor
protected XMLDescriptor getDescriptor(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractSession session, boolean isXMLRoot)
-
clone
public XMLMarshaller clone()
- Overrides:
clone
in classjava.lang.Object
-
setNamespacePrefixMapper
public void setNamespacePrefixMapper(NamespacePrefixMapper mapper)
NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)- Overrides:
setNamespacePrefixMapper
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
- Since:
- 2.3.3
-
getNamespacePrefixMapper
public NamespacePrefixMapper getNamespacePrefixMapper()
NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)- Overrides:
getNamespacePrefixMapper
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
- Returns:
- Since:
- 2.3.3
-
getCharacterEscapeHandler
public CharacterEscapeHandler getCharacterEscapeHandler()
Return this Marshaller's CharacterEscapeHandler.- Overrides:
getCharacterEscapeHandler
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
- Since:
- 2.3.3
-
setCharacterEscapeHandler
public void setCharacterEscapeHandler(CharacterEscapeHandler c)
Set this Marshaller's CharacterEscapeHandler.- Overrides:
setCharacterEscapeHandler
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
- Since:
- 2.3.3
-
setMediaType
public void setMediaType(MediaType mediaType)
Set the MediaType for this xmlMarshaller. See org.eclipse.persistence.oxm.MediaType for the media types supported by EclipseLink MOXy- Overrides:
setMediaType
in classorg.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder,DatabaseSession>
- Parameters:
mediaType
-- Since:
- EclipseLink 2.4.0
-
getMediaType
public MediaType getMediaType()
Get the MediaType for this xmlMarshaller. See org.eclipse.persistence.oxm.MediaType for the media types supported by EclipseLink MOXy If not set the default is MediaType.APPLICATION_XML- Returns:
- MediaType
- Since:
- EclipseLink 2.4.0
-
getJsonTypeConfiguration
public org.eclipse.persistence.internal.oxm.JsonTypeConfiguration getJsonTypeConfiguration()
Returns json type configuration.- Specified by:
getJsonTypeConfiguration
in classorg.eclipse.persistence.internal.oxm.Marshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
- Returns:
- json type configuration
- Since:
- 2.6.0
-
-