- 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<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,TreeObjectBuilder,DatabaseSession>
-
- org.eclipse.persistence.oxm.XMLMarshaller
-
- All Implemented Interfaces:
Cloneable
public class XMLMarshaller extends XMLMarshaller<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,TreeObjectBuilder,DatabaseSession> implements 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
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.persistence.internal.oxm.Marshaller
Marshaller.Listener
-
-
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
-
Fields inherited from class org.eclipse.persistence.internal.oxm.Marshaller
context, mapper, marshalProperties
-
-
Constructor Summary
Constructors Modifier Constructor Description XMLMarshaller(XMLContext xmlContext)Create a new XMLMarshaller based on the specified sessionprotectedXMLMarshaller(XMLMarshaller xmlMarshaller)Copy constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description XMLMarshallerclone()CharacterEscapeHandlergetCharacterEscapeHandler()Return this Marshaller's CharacterEscapeHandler.protected XMLDescriptorgetDescriptor(Object object, AbstractSession session, boolean isXMLRoot)JsonTypeConfigurationgetJsonTypeConfiguration()Returns json type configuration.XMLMarshalListenergetMarshalListener()MediaTypegetMediaType()Get the MediaType for this xmlMarshaller.NamespacePrefixMappergetNamespacePrefixMapper()NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)protected NodegetNode(Object object, Node parentNode, AbstractSession session, XMLDescriptor xmlDescriptor, boolean isXMLRoot)PropertiesgetProperties()Return a properties object for a given instance of the XMLMarshaller.XMLContextgetXMLContext()Return the instance of XMLContext that was used to create this instance of XMLMarshaller.voidmarshal(Object object, Result result)PUBLIC: Convert the given object to XML and update the given result with that XML Documentprotected voidmarshal(Object object, AbstractSession session, MarshalRecord marshalRecord)Convert the given object to XML and update the given marshal record with that XML Document.protected DocumentobjectToXML(Object object, XMLDescriptor descriptor, boolean isXMLRoot)INTERNAL: Convert the given object to an XML DocumentDocumentobjectToXML(Object object, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)INTERNAL: Convert the given object to an XML DocumentDocumentobjectToXML(Object object, Node parent, DocumentPreservationPolicy docPresPolicy)DocumentobjectToXML(Object object, Node rootNode, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)protected NodeobjectToXMLNode(Object object, Node rootNode, AbstractSession session, XMLDescriptor descriptor, boolean isXMLRoot)voidsetCharacterEscapeHandler(CharacterEscapeHandler c)Set this Marshaller's CharacterEscapeHandler.voidsetMarshalListener(XMLMarshalListener listener)voidsetMediaType(MediaType mediaType)Set the MediaType for this xmlMarshaller.voidsetNamespacePrefixMapper(NamespacePrefixMapper mapper)NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)voidsetXMLContext(XMLContext value)Set the XMLContext used by this instance of XMLMarshaller.voidsetXMLMarshalHandler(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
-
Methods inherited from class org.eclipse.persistence.internal.oxm.Marshaller
getContext, getEncoding, getErrorHandler, getIndentString, getProperty, isEqualUsingIdenity, isFormattedOutput, setEqualUsingIdenity, setErrorHandler, setIndentString
-
-
-
-
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 Properties getProperties()
Return a properties object for a given instance of the XMLMarshaller.
-
setXMLMarshalHandler
public void setXMLMarshalHandler(XMLMarshalListener marshalListener)
-
marshal
public void marshal(Object object, Result result) throws XMLMarshalException
PUBLIC: Convert the given object to XML and update the given result with that XML Document- Overrides:
marshalin classXMLMarshaller<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,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 Node getNode(Object object, Node parentNode, AbstractSession session, XMLDescriptor xmlDescriptor, boolean isXMLRoot)
-
getMarshalListener
public XMLMarshalListener getMarshalListener()
- Overrides:
getMarshalListenerin classMarshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
-
setMarshalListener
public void setMarshalListener(XMLMarshalListener listener)
- Overrides:
setMarshalListenerin classMarshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>
-
marshal
protected void marshal(Object object, 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 Document objectToXML(Object object, XMLDescriptor descriptor, boolean isXMLRoot) throws XMLMarshalException
INTERNAL: Convert the given object to an XML Document- Overrides:
objectToXMLin classXMLMarshaller<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,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 Node objectToXMLNode(Object object, Node rootNode, AbstractSession session, XMLDescriptor descriptor, boolean isXMLRoot) throws XMLMarshalException
- Overrides:
objectToXMLNodein classXMLMarshaller<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,TreeObjectBuilder,DatabaseSession>- Throws:
XMLMarshalException
-
objectToXML
public Document objectToXML(Object object, Node parent, DocumentPreservationPolicy docPresPolicy)
-
objectToXML
public Document objectToXML(Object object, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
INTERNAL: Convert the given object to an XML Document
-
objectToXML
public Document objectToXML(Object object, Node rootNode, XMLDescriptor descriptor, XMLRecord xmlRow, boolean isXMLRoot, DocumentPreservationPolicy docPresPolicy)
-
getDescriptor
protected XMLDescriptor getDescriptor(Object object, AbstractSession session, boolean isXMLRoot)
-
clone
public XMLMarshaller clone()
-
setNamespacePrefixMapper
public void setNamespacePrefixMapper(NamespacePrefixMapper mapper)
NamespacePrefixMapper that can be used during marshal (instead of those set in the project meta data)- Overrides:
setNamespacePrefixMapperin classMarshaller<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:
getNamespacePrefixMapperin classMarshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>- Since:
- 2.3.3
-
getCharacterEscapeHandler
public CharacterEscapeHandler getCharacterEscapeHandler()
Return this Marshaller's CharacterEscapeHandler.- Overrides:
getCharacterEscapeHandlerin classMarshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>- Since:
- 2.3.3
-
setCharacterEscapeHandler
public void setCharacterEscapeHandler(CharacterEscapeHandler c)
Set this Marshaller's CharacterEscapeHandler.- Overrides:
setCharacterEscapeHandlerin classMarshaller<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:
setMediaTypein classXMLMarshaller<AbstractSession,CharacterEscapeHandler,XMLContext,XMLDescriptor,XMLMarshalListener,MediaType,NamespacePrefixMapper,TreeObjectBuilder,DatabaseSession>- 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 JsonTypeConfiguration getJsonTypeConfiguration()
Returns json type configuration.- Specified by:
getJsonTypeConfigurationin classMarshaller<CharacterEscapeHandler,XMLContext,XMLMarshalListener,MediaType,NamespacePrefixMapper>- Returns:
- json type configuration
- Since:
- 2.6.0
-
-