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
public class SaajStaxWriter extends Object implements 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 withinSaajStaxWriter.DeferredElement
object (deferredElement
field). As soon as any other method thanwriteAttribute
,writeNamespace
,writeDefaultNamespace
orsetNamespace
is called, the contents ofdeferredElement
is transformed into new SOAPElement (which is appropriately inserted into the SOAPMessage under construction). This mechanism is necessary to fix JDK-8159058 issue.- Author:
- [email protected]
-
-
Field Summary
Fields Modifier and Type Field Description protected static String
Body
protected jakarta.xml.soap.SOAPElement
currentElement
protected com.sun.xml.ws.api.message.saaj.SaajStaxWriter.DeferredElement
deferredElement
protected static String
Envelope
protected String
envURI
protected static String
Header
protected jakarta.xml.soap.SOAPMessage
soap
protected static String
xmlns
-
Constructor Summary
Constructors Constructor Description SaajStaxWriter(jakarta.xml.soap.SOAPMessage msg, String uri)
-
Method Summary
-
-
-
Field Detail
-
soap
protected jakarta.xml.soap.SOAPMessage soap
-
envURI
protected String envURI
-
currentElement
protected jakarta.xml.soap.SOAPElement currentElement
-
deferredElement
protected com.sun.xml.ws.api.message.saaj.SaajStaxWriter.DeferredElement deferredElement
-
Envelope
protected static final String Envelope
- See Also:
- Constant Field Values
-
Header
protected static final String Header
- See Also:
- Constant Field Values
-
Body
protected static final String Body
- See Also:
- Constant Field Values
-
xmlns
protected static final String xmlns
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SaajStaxWriter
public SaajStaxWriter(jakarta.xml.soap.SOAPMessage msg, String uri) throws jakarta.xml.soap.SOAPException
- Throws:
jakarta.xml.soap.SOAPException
-
-
Method Detail
-
getSOAPMessage
public jakarta.xml.soap.SOAPMessage getSOAPMessage()
-
getEnvelope
protected jakarta.xml.soap.SOAPElement getEnvelope() throws jakarta.xml.soap.SOAPException
- Throws:
jakarta.xml.soap.SOAPException
-
writeStartElement
public void writeStartElement(String localName) throws XMLStreamException
- Specified by:
writeStartElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeStartElement
public void writeStartElement(String ns, String ln) throws XMLStreamException
- Specified by:
writeStartElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeStartElement
public void writeStartElement(String prefix, String ln, String ns) throws XMLStreamException
- Specified by:
writeStartElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEmptyElement
public void writeEmptyElement(String uri, String ln) throws XMLStreamException
- Specified by:
writeEmptyElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEmptyElement
public void writeEmptyElement(String prefix, String ln, String uri) throws XMLStreamException
- Specified by:
writeEmptyElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEmptyElement
public void writeEmptyElement(String ln) throws XMLStreamException
- Specified by:
writeEmptyElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEndElement
public void writeEndElement() throws XMLStreamException
- Specified by:
writeEndElement
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEndDocument
public void writeEndDocument() throws XMLStreamException
- Specified by:
writeEndDocument
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
close
public void close() throws XMLStreamException
- Specified by:
close
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
flush
public void flush() throws XMLStreamException
- Specified by:
flush
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeAttribute
public void writeAttribute(String ln, String val) throws XMLStreamException
- Specified by:
writeAttribute
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeAttribute
public void writeAttribute(String prefix, String ns, String ln, String value) throws XMLStreamException
- Specified by:
writeAttribute
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeAttribute
public void writeAttribute(String ns, String ln, String val) throws XMLStreamException
- Specified by:
writeAttribute
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeNamespace
public void writeNamespace(String prefix, String uri) throws XMLStreamException
- Specified by:
writeNamespace
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeDefaultNamespace
public void writeDefaultNamespace(String uri) throws XMLStreamException
- Specified by:
writeDefaultNamespace
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeComment
public void writeComment(String data) throws XMLStreamException
- Specified by:
writeComment
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeProcessingInstruction
public void writeProcessingInstruction(String target) throws XMLStreamException
- Specified by:
writeProcessingInstruction
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeProcessingInstruction
public void writeProcessingInstruction(String target, String data) throws XMLStreamException
- Specified by:
writeProcessingInstruction
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeCData
public void writeCData(String data) throws XMLStreamException
- Specified by:
writeCData
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeDTD
public void writeDTD(String dtd) throws XMLStreamException
- Specified by:
writeDTD
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeEntityRef
public void writeEntityRef(String name) throws XMLStreamException
- Specified by:
writeEntityRef
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeStartDocument
public void writeStartDocument() throws XMLStreamException
- Specified by:
writeStartDocument
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeStartDocument
public void writeStartDocument(String version) throws XMLStreamException
- Specified by:
writeStartDocument
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeStartDocument
public void writeStartDocument(String encoding, String version) throws XMLStreamException
- Specified by:
writeStartDocument
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeCharacters
public void writeCharacters(String text) throws XMLStreamException
- Specified by:
writeCharacters
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
writeCharacters
public void writeCharacters(char[] text, int start, int len) throws XMLStreamException
- Specified by:
writeCharacters
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
getPrefix
public String getPrefix(String uri) throws XMLStreamException
- Specified by:
getPrefix
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
setPrefix
public void setPrefix(String prefix, String uri) throws XMLStreamException
- Specified by:
setPrefix
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
setDefaultNamespace
public void setDefaultNamespace(String uri) throws XMLStreamException
- Specified by:
setDefaultNamespace
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
setNamespaceContext
public void setNamespaceContext(NamespaceContext context) throws XMLStreamException
- Specified by:
setNamespaceContext
in interfaceXMLStreamWriter
- Throws:
XMLStreamException
-
getProperty
public Object getProperty(String name) throws IllegalArgumentException
- Specified by:
getProperty
in interfaceXMLStreamWriter
- Throws:
IllegalArgumentException
-
getNamespaceContext
public NamespaceContext getNamespaceContext()
- Specified by:
getNamespaceContext
in interfaceXMLStreamWriter
-
-