org.eclipse.persistence.oxm
Class XMLMarshaller
java.lang.Object
org.eclipse.persistence.internal.oxm.Marshaller<CONTEXT,MEDIA_TYPE,NAMESPACE_PREFIX_MAPPER>
org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
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,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
- 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
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 |
Method Summary |
XMLMarshaller |
clone()
|
protected XMLDescriptor |
getDescriptor(java.lang.Object object,
org.eclipse.persistence.internal.sessions.AbstractSession session,
boolean isXMLRoot)
|
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. |
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. |
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 Document |
org.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.Document |
objectToXML(java.lang.Object object,
XMLDescriptor descriptor,
boolean isXMLRoot)
INTERNAL:
Convert the given object to an XML Document |
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 |
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 |
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, getMediaType, getNamespaceSeparator, getNoNamespaceSchemaLocation, getSchema, getSchemaLocation, getTransformer, getValueWrapper, getXmlHeader, isFragment, isIncludeRoot, isMarshalEmptyCollections, isReduceAnyArrays, isSimpleXMLRoot, isWrapperAsCollectionName, marshal, marshal, marshal, marshal, marshal, marshal, marshal, objectToXML, objectToXMLNode, setAttachmentMarshaller, setAttributePrefix, setEncoding, setFormattedOutput, setFragment, setIncludeRoot, setMarshalAttributeGroup, setMarshalEmptyCollections, setMediaType, setNamespaceSeparator, setNoNamespaceSchemaLocation, setReduceAnyArrays, setSchema, setSchemaLocation, setValueWrapper, setWrapperAsCollectionName, setXmlHeader |
Methods inherited from class org.eclipse.persistence.internal.oxm.Marshaller |
getCharacterEscapeHandler, getContext, getEncoding, getErrorHandler, getIndentString, getMarshalListener, getProperty, isEqualUsingIdenity, isFormattedOutput, setCharacterEscapeHandler, setEqualUsingIdenity, setErrorHandler, setIndentString, setMarshalListener |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
XMLMarshaller
public XMLMarshaller(XMLContext xmlContext)
- Create a new XMLMarshaller based on the specified session
- Parameters:
session
- A single session
XMLMarshaller
protected XMLMarshaller(XMLMarshaller xmlMarshaller)
- Copy constructor
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 class org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
- 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 class org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
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 class org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
- 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 class org.eclipse.persistence.internal.oxm.XMLMarshaller<org.eclipse.persistence.internal.sessions.AbstractSession,XMLContext,XMLDescriptor,MediaType,NamespacePrefixMapper,org.eclipse.persistence.internal.oxm.TreeObjectBuilder>
- Throws:
XMLMarshalException
objectToXML
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 class java.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 class org.eclipse.persistence.internal.oxm.Marshaller<XMLContext,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 class org.eclipse.persistence.internal.oxm.Marshaller<XMLContext,MediaType,NamespacePrefixMapper>
- Returns:
- Since:
- 2.3.3