java.lang.Object
com.sun.xml.messaging.saaj.util.stax.SaajStaxWriter
- All Implemented Interfaces:
XMLStreamWriter
- Direct Known Subclasses:
SaajStaxWriterEx
SaajStaxWriter builds a SAAJ SOAPMessage by using XMLStreamWriter interface.
Defers creation of SOAPElement until all the aspects of the name of the element are known.
In some cases, the namespace uri is indicated only by the writeNamespace(String, String) call.
After opening an element (writeStartElement, writeEmptyElement methods), all attributes
and namespace assignments are retained within SaajStaxWriter.DeferredElement object (deferredElement field).
As soon as any other method than writeAttribute, writeNamespace, writeDefaultNamespace
or setNamespace is called, the contents of deferredElement is transformed into new SOAPElement
(which is appropriately inserted into the SOAPMessage under construction).
This mechanism is necessary to fix JDK-8159058 issue.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classHolds details of element that needs to be deferred in order to manage namespace assignments correctly. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected SOAPElementprotected SaajStaxWriter.DeferredElementprotected static final Stringprotected Stringprotected static final Stringprotected SOAPMessage -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voidflush()protected SOAPElementgetProperty(String name) voidvoidsetNamespaceContext(NamespaceContext context) voidvoidwriteAttribute(String ln, String val) voidwriteAttribute(String ns, String ln, String val) voidwriteAttribute(String prefix, String ns, String ln, String value) voidwriteCData(String data) voidwriteCharacters(char[] text, int start, int len) voidwriteCharacters(String text) voidwriteComment(String data) voidvoidvoidvoidwriteEmptyElement(String uri, String ln) voidwriteEmptyElement(String prefix, String ln, String uri) voidvoidvoidwriteEntityRef(String name) voidwriteNamespace(String prefix, String uri) voidwriteProcessingInstruction(String target) voidwriteProcessingInstruction(String target, String data) voidvoidwriteStartDocument(String version) voidwriteStartDocument(String encoding, String version) voidwriteStartElement(String localName) voidwriteStartElement(String ns, String ln) voidwriteStartElement(String prefix, String ln, String ns)
-
Field Details
-
soap
-
envURI
-
currentElement
-
deferredElement
-
Envelope
- See Also:
-
Header
- See Also:
-
Body
- See Also:
-
-
Constructor Details
-
SaajStaxWriter
- Throws:
SOAPException
-
-
Method Details
-
getSOAPMessage
-
getEnvelope
- Throws:
SOAPException
-
writeStartElement
- Specified by:
writeStartElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeStartElement
- Specified by:
writeStartElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeStartElement
- Specified by:
writeStartElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEmptyElement
- Specified by:
writeEmptyElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEmptyElement
- Specified by:
writeEmptyElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEmptyElement
- Specified by:
writeEmptyElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEndElement
- Specified by:
writeEndElementin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEndDocument
- Specified by:
writeEndDocumentin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
close
- Specified by:
closein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
flush
- Specified by:
flushin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeAttribute
- Specified by:
writeAttributein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeAttribute
public void writeAttribute(String prefix, String ns, String ln, String value) throws XMLStreamException - Specified by:
writeAttributein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeAttribute
- Specified by:
writeAttributein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeNamespace
- Specified by:
writeNamespacein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeDefaultNamespace
- Specified by:
writeDefaultNamespacein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeComment
- Specified by:
writeCommentin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeProcessingInstruction
- Specified by:
writeProcessingInstructionin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeProcessingInstruction
- Specified by:
writeProcessingInstructionin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeCData
- Specified by:
writeCDatain interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeDTD
- Specified by:
writeDTDin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeEntityRef
- Specified by:
writeEntityRefin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeStartDocument
- Specified by:
writeStartDocumentin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeStartDocument
- Specified by:
writeStartDocumentin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeStartDocument
- Specified by:
writeStartDocumentin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeCharacters
- Specified by:
writeCharactersin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
writeCharacters
- Specified by:
writeCharactersin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
getPrefix
- Specified by:
getPrefixin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
setPrefix
- Specified by:
setPrefixin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
setDefaultNamespace
- Specified by:
setDefaultNamespacein interfaceXMLStreamWriter- Throws:
XMLStreamException
-
setNamespaceContext
- Specified by:
setNamespaceContextin interfaceXMLStreamWriter- Throws:
XMLStreamException
-
getProperty
- Specified by:
getPropertyin interfaceXMLStreamWriter- Throws:
IllegalArgumentException
-
getNamespaceContext
- Specified by:
getNamespaceContextin interfaceXMLStreamWriter
-