src/share/jaxws_classes/com/sun/xml/internal/ws/api/message/saaj/SaajStaxWriter.java

Print this page

        

*** 53,64 **** static final protected String Envelope = "Envelope"; static final protected String Header = "Header"; static final protected String Body = "Body"; static final protected String xmlns = "xmlns"; - private boolean isHeaderSeen = false; - public SaajStaxWriter(final SOAPMessage msg, String uri) throws SOAPException { soap = msg; this.envURI = uri; } --- 53,62 ----
*** 91,101 **** if (Envelope.equals(ln)) { currentElement = getEnvelope(); fixPrefix(prefix); return; } else if (Header.equals(ln)) { - isHeaderSeen = true; currentElement = soap.getSOAPHeader(); fixPrefix(prefix); return; } else if (Body.equals(ln)) { currentElement = soap.getSOAPBody(); --- 89,98 ----
*** 142,166 **** if (currentElement != null) currentElement = currentElement.getParentElement(); } @Override public void writeEndDocument() throws XMLStreamException { - try { - if (!isHeaderSeen) { - SOAPElement header = soap.getSOAPHeader(); - if (header != null) { - String prefixAtHeader = header.getPrefix(); - SOAPElement env = getEnvelope(); - header.detachNode(); - if (prefixAtHeader != null && !prefixAtHeader.equals(env.getPrefix())) { - env.removeNamespaceDeclaration(prefixAtHeader); - } - } - } - } catch (SOAPException e) { - throw new XMLStreamException(e); - } } @Override public void close() throws XMLStreamException { } --- 139,148 ----