--- old/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/message/saaj/SAAJMessageHeaders.java 2017-03-10 23:56:59.738275647 +0300 +++ new/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/api/message/saaj/SAAJMessageHeaders.java 2017-03-10 23:56:59.626276129 +0300 @@ -25,6 +25,18 @@ package com.sun.xml.internal.ws.api.message.saaj; +import com.sun.xml.internal.ws.api.SOAPVersion; +import com.sun.xml.internal.ws.api.WSBinding; +import com.sun.xml.internal.ws.api.message.Header; +import com.sun.xml.internal.ws.api.message.MessageHeaders; +import com.sun.xml.internal.ws.binding.SOAPBindingImpl; +import com.sun.xml.internal.ws.message.saaj.SAAJHeader; + +import javax.xml.namespace.QName; +import javax.xml.soap.SOAPException; +import javax.xml.soap.SOAPHeader; +import javax.xml.soap.SOAPHeaderElement; +import javax.xml.soap.SOAPMessage; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -34,21 +46,6 @@ import java.util.Map; import java.util.Set; -import javax.xml.namespace.QName; -import javax.xml.soap.SOAPException; -import javax.xml.soap.SOAPHeader; -import javax.xml.soap.SOAPHeaderElement; -import javax.xml.soap.SOAPMessage; - -import com.sun.xml.internal.messaging.saaj.soap.SOAPDocumentImpl; -import com.sun.xml.internal.messaging.saaj.soap.impl.HeaderImpl; -import com.sun.xml.internal.ws.api.SOAPVersion; -import com.sun.xml.internal.ws.api.WSBinding; -import com.sun.xml.internal.ws.api.message.Header; -import com.sun.xml.internal.ws.api.message.MessageHeaders; -import com.sun.xml.internal.ws.binding.SOAPBindingImpl; -import com.sun.xml.internal.ws.message.saaj.SAAJHeader; - public class SAAJMessageHeaders implements MessageHeaders { SOAPMessage sm; Map nonSAAJHeaders; @@ -236,12 +233,11 @@ if (soapHeader == null) { return null; } - SOAPDocumentImpl soapDocument = ((HeaderImpl)soapHeader).getSoapDocument(); SOAPHeaderElement headerElem = find(nsUri, localName); if (headerElem == null) { return null; } - headerElem = (SOAPHeaderElement) soapDocument.find(soapHeader.removeChild(headerElem)); + headerElem = (SOAPHeaderElement) soapHeader.removeChild(headerElem); //it might have been a nonSAAJHeader - remove from that map removeNonSAAJHeader(headerElem);