1.1 --- a/src/share/jaxws_classes/com/sun/xml/internal/ws/protocol/soap/MUTube.java Thu Apr 04 19:05:24 2013 -0700 1.2 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/protocol/soap/MUTube.java Tue Apr 09 14:51:13 2013 +0100 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -29,14 +29,12 @@ 1.11 import static com.sun.xml.internal.ws.api.SOAPVersion.SOAP_11; 1.12 import static com.sun.xml.internal.ws.api.SOAPVersion.SOAP_12; 1.13 import com.sun.xml.internal.ws.api.WSBinding; 1.14 -import com.sun.xml.internal.ws.api.addressing.AddressingVersion; 1.15 import com.sun.xml.internal.ws.api.message.Header; 1.16 -import com.sun.xml.internal.ws.api.message.HeaderList; 1.17 import com.sun.xml.internal.ws.api.message.Message; 1.18 +import com.sun.xml.internal.ws.api.message.MessageHeaders; 1.19 import com.sun.xml.internal.ws.api.pipe.Tube; 1.20 import com.sun.xml.internal.ws.api.pipe.TubeCloner; 1.21 import com.sun.xml.internal.ws.api.pipe.helper.AbstractFilterTubeImpl; 1.22 -import com.sun.xml.internal.ws.binding.BindingImpl; 1.23 import com.sun.xml.internal.ws.binding.SOAPBindingImpl; 1.24 import com.sun.xml.internal.ws.message.DOMHeader; 1.25 import com.sun.xml.internal.ws.fault.SOAPFaultBuilder; 1.26 @@ -49,7 +47,6 @@ 1.27 import javax.xml.ws.WebServiceException; 1.28 import javax.xml.ws.soap.SOAPBinding; 1.29 import javax.xml.ws.soap.SOAPFaultException; 1.30 -import java.util.HashSet; 1.31 import java.util.Set; 1.32 import java.util.logging.Logger; 1.33 1.34 @@ -95,27 +92,10 @@ 1.35 * @return returns the headers that have mustUnderstand attribute and are not understood 1.36 * by the binding. 1.37 */ 1.38 - public final Set<QName> getMisUnderstoodHeaders(HeaderList headers, Set<String> roles, 1.39 + public final Set<QName> getMisUnderstoodHeaders(MessageHeaders headers, Set<String> roles, 1.40 Set<QName> handlerKnownHeaders) { 1.41 - Set<QName> notUnderstoodHeaders = null; 1.42 - for (int i = 0; i < headers.size(); i++) { 1.43 - if (!headers.isUnderstood(i)) { 1.44 - Header header = headers.get(i); 1.45 - if (!header.isIgnorable(soapVersion, roles)) { 1.46 - QName qName = new QName(header.getNamespaceURI(), header.getLocalPart()); 1.47 - // see if the binding can understand it 1.48 - if (!binding.understandsHeader(qName)) { 1.49 - if (!handlerKnownHeaders.contains(qName)) { 1.50 - logger.info("Element not understood=" + qName); 1.51 - if (notUnderstoodHeaders == null) 1.52 - notUnderstoodHeaders = new HashSet<QName>(); 1.53 - notUnderstoodHeaders.add(qName); 1.54 - } 1.55 - } 1.56 - } 1.57 - } 1.58 - } 1.59 - return notUnderstoodHeaders; 1.60 + return headers.getNotUnderstoodHeaders(roles, handlerKnownHeaders, binding); 1.61 + 1.62 } 1.63 1.64 /**