Package com.sun.xml.ws.api.message.saaj
Class SaajStaxWriter
java.lang.Object
com.sun.xml.ws.api.message.saaj.SaajStaxWriter
- All Implemented Interfaces:
XMLStreamWriter
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.
- Author:
- shih-chang.chen@oracle.com
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected javax.xml.soap.SOAPElementprotected com.sun.xml.ws.api.message.saaj.SaajStaxWriter.DeferredElementprotected static final Stringprotected Stringprotected static final Stringprotected javax.xml.soap.SOAPMessageprotected static final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voidflush()protected javax.xml.soap.SOAPElementgetProperty(String name) javax.xml.soap.SOAPMessagevoidvoidsetNamespaceContext(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
protected javax.xml.soap.SOAPMessage soap -
envURI
-
currentElement
protected javax.xml.soap.SOAPElement currentElement -
deferredElement
protected com.sun.xml.ws.api.message.saaj.SaajStaxWriter.DeferredElement deferredElement -
Envelope
- See Also:
-
Header
- See Also:
-
Body
- See Also:
-
xmlns
- See Also:
-
-
Constructor Details
-
SaajStaxWriter
public SaajStaxWriter(javax.xml.soap.SOAPMessage msg, String uri) throws javax.xml.soap.SOAPException - Throws:
javax.xml.soap.SOAPException
-
-
Method Details
-
getSOAPMessage
public javax.xml.soap.SOAPMessage getSOAPMessage() -
getEnvelope
protected javax.xml.soap.SOAPElement getEnvelope() throws javax.xml.soap.SOAPException- Throws:
javax.xml.soap.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
-