public class SAXMarshaller extends Object implements XMLSerializer
Constructor and Description |
---|
SAXMarshaller(ContentHandler _writer,
com.sun.xml.bind.marshaller.NamespacePrefixMapper prefixMapper,
MarshallerImpl _owner)
Creates a marshalling context by designating the ContentHandler
that receives generated SAX2 events.
|
Modifier and Type | Method and Description |
---|---|
void |
childAsAttributes(com.sun.xml.bind.JAXBObject o,
String fieldName)
This method is called when an JAXBObject object is found
while the marshaller is in the "attribute" mode (i.e. marshalling
attributes of an element)
|
void |
childAsBody(com.sun.xml.bind.JAXBObject o,
String fieldName)
This method is called when an JAXBObject object is found
while the marshaller is in the "element" mode (i.e. marshalling
a content model of an element)
|
void |
childAsURIs(com.sun.xml.bind.JAXBObject o,
String fieldName)
This method is called when an JAXBObject object is found
while the marshaller is in the "URI" mode.
|
void |
endAttribute() |
void |
endAttributes()
Switches to the "marshal child texts/elements" mode.
|
void |
endElement()
Ends marshalling of an element.
|
void |
endNamespaceDecls()
Switches to the mode to marshal attribute values.
|
NamespaceContext2 |
getNamespaceContext()
Obtains a namespace context object, which is used to
declare/obtain namespace bindings.
|
String |
onID(com.sun.xml.bind.marshaller.IdentifiableObject owner,
String value)
Notifies the serializer that an ID value has just marshalled.
|
String |
onIDREF(com.sun.xml.bind.marshaller.IdentifiableObject obj)
Notifies the serializer that an IDREF value has just marshalled.
|
void |
reportError(ValidationEvent ve)
Errors detected by the XMLSerializable should be either thrown
as
SAXException or reported through this method. |
void |
reportMissingObjectError(String fieldName) |
void |
startAttribute(String uri,
String local)
Starts marshalling of an attribute.
|
void |
startElement(String uri,
String local)
Starts marshalling of an element.
|
void |
text(String text,
String fieldName)
Marshalls text.
|
public SAXMarshaller(ContentHandler _writer, com.sun.xml.bind.marshaller.NamespacePrefixMapper prefixMapper, MarshallerImpl _owner)
public NamespaceContext2 getNamespaceContext()
XMLSerializer
getNamespaceContext
in interface XMLSerializer
public void startElement(String uri, String local) throws SAXException
startElement
in interface XMLSerializer
SAXException
public void endNamespaceDecls() throws SAXException
XMLSerializer
endNamespaceDecls
in interface XMLSerializer
SAXException
public void endAttributes() throws SAXException
endAttributes
in interface XMLSerializer
SAXException
public void endElement() throws SAXException
endElement
in interface XMLSerializer
SAXException
public void text(String text, String fieldName) throws SAXException
This method can be called (i) after the startAttribute method and (ii) before the endAttribute method, to marshal attribute values. If the method is called more than once, those texts are considered as separated by whitespaces. For example,
c.startAttribute(); c.text("abc"); c.text("def"); c.endAttribute("","foo");will generate foo="abc def".
Similarly, this method can be called after the endAttributes method to marshal texts inside elements. The same rule about multiple invokations apply to this case, too. For example,
c.startElement("","foo"); c.endAttributes(); c.text("abc"); c.text("def"); c.startElement("","bar"); c.endAttributes(); c.endElement(); c.text("ghi"); c.endElement();will generate
<foo>abc def<bar/>ghi</foo>
.text
in interface XMLSerializer
SAXException
public void startAttribute(String uri, String local)
startAttribute
in interface XMLSerializer
public void endAttribute()
endAttribute
in interface XMLSerializer
public String onID(com.sun.xml.bind.marshaller.IdentifiableObject owner, String value) throws SAXException
XMLSerializer
onID
in interface XMLSerializer
owner
- JAXB content object that posesses the ID.value
- The value of the ID.SAXException
public String onIDREF(com.sun.xml.bind.marshaller.IdentifiableObject obj) throws SAXException
XMLSerializer
onIDREF
in interface XMLSerializer
SAXException
public void childAsBody(com.sun.xml.bind.JAXBObject o, String fieldName) throws SAXException
XMLSerializer
childAsBody
in interface XMLSerializer
fieldName
- property name of the parent objeect from which 'o' comes.
Used as a part of the error message in case anything goes wrong
with 'o'.SAXException
public void childAsAttributes(com.sun.xml.bind.JAXBObject o, String fieldName) throws SAXException
XMLSerializer
childAsAttributes
in interface XMLSerializer
fieldName
- property name of the parent objeect from which 'o' comes.
Used as a part of the error message in case anything goes wrong
with 'o'.SAXException
public void childAsURIs(com.sun.xml.bind.JAXBObject o, String fieldName) throws SAXException
XMLSerializer
childAsURIs
in interface XMLSerializer
fieldName
- property name of the parent objeect from which 'o' comes.
Used as a part of the error message in case anything goes wrong
with 'o'.SAXException
public void reportError(ValidationEvent ve) throws com.sun.xml.bind.serializer.AbortSerializationException
XMLSerializer
SAXException
or reported through this method.
The callee should report an error to the client application
andreportError
in interface XMLSerializer
com.sun.xml.bind.serializer.AbortSerializationException
public void reportMissingObjectError(String fieldName) throws SAXException
SAXException
Copyright © 2010–2025 Open Identity Platform Community. All rights reserved.