1.1 --- a/src/share/jaxws_classes/com/sun/xml/internal/ws/addressing/WsaTube.java Thu Apr 04 19:05:24 2013 -0700 1.2 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/addressing/WsaTube.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 @@ -30,8 +30,8 @@ 1.11 import com.sun.xml.internal.ws.addressing.model.MissingAddressingHeaderException; 1.12 import com.sun.xml.internal.ws.api.SOAPVersion; 1.13 import com.sun.xml.internal.ws.api.WSBinding; 1.14 -import com.sun.xml.internal.ws.api.server.WSEndpoint; 1.15 import com.sun.xml.internal.ws.api.addressing.AddressingVersion; 1.16 +import com.sun.xml.internal.ws.api.message.AddressingUtils; 1.17 import com.sun.xml.internal.ws.api.message.Header; 1.18 import com.sun.xml.internal.ws.api.message.Message; 1.19 import com.sun.xml.internal.ws.api.message.Messages; 1.20 @@ -43,21 +43,16 @@ 1.21 import com.sun.xml.internal.ws.api.pipe.TubeCloner; 1.22 import com.sun.xml.internal.ws.api.pipe.helper.AbstractFilterTubeImpl; 1.23 import com.sun.xml.internal.ws.developer.MemberSubmissionAddressingFeature; 1.24 -import com.sun.xml.internal.ws.developer.WSBindingProvider; 1.25 import com.sun.xml.internal.ws.message.FaultDetailHeader; 1.26 import com.sun.xml.internal.ws.resources.AddressingMessages; 1.27 -import com.sun.xml.internal.ws.binding.BindingImpl; 1.28 1.29 import javax.xml.namespace.QName; 1.30 import javax.xml.soap.SOAPFault; 1.31 import javax.xml.stream.XMLStreamException; 1.32 import javax.xml.ws.WebServiceException; 1.33 -import javax.xml.ws.Binding; 1.34 import javax.xml.ws.soap.AddressingFeature; 1.35 import javax.xml.ws.soap.SOAPBinding; 1.36 import java.util.Iterator; 1.37 -import java.util.Set; 1.38 -import java.util.Arrays; 1.39 import java.util.logging.Logger; 1.40 import java.util.logging.Level; 1.41 1.42 @@ -107,16 +102,15 @@ 1.43 } 1.44 1.45 private void addKnownHeadersToBinding(WSBinding binding) { 1.46 - Set<QName> headerQNames = binding.getKnownHeaders(); 1.47 for (AddressingVersion addrVersion: AddressingVersion.values()) { 1.48 - headerQNames.add(addrVersion.actionTag); 1.49 - headerQNames.add(addrVersion.faultDetailTag); 1.50 - headerQNames.add(addrVersion.faultToTag); 1.51 - headerQNames.add(addrVersion.fromTag); 1.52 - headerQNames.add(addrVersion.messageIDTag); 1.53 - headerQNames.add(addrVersion.relatesToTag); 1.54 - headerQNames.add(addrVersion.replyToTag); 1.55 - headerQNames.add(addrVersion.toTag); 1.56 + binding.addKnownHeader(addrVersion.actionTag); 1.57 + binding.addKnownHeader(addrVersion.faultDetailTag); 1.58 + binding.addKnownHeader(addrVersion.faultToTag); 1.59 + binding.addKnownHeader(addrVersion.fromTag); 1.60 + binding.addKnownHeader(addrVersion.messageIDTag); 1.61 + binding.addKnownHeader(addrVersion.relatesToTag); 1.62 + binding.addKnownHeader(addrVersion.replyToTag); 1.63 + binding.addKnownHeader(addrVersion.toTag); 1.64 } 1.65 } 1.66 1.67 @@ -206,7 +200,9 @@ 1.68 if (packet.getMessage().getHeaders() != null) 1.69 return false; 1.70 1.71 - String action = packet.getMessage().getHeaders().getAction(addressingVersion, soapVersion); 1.72 + String action = AddressingUtils.getAction( 1.73 + packet.getMessage().getHeaders(), 1.74 + addressingVersion, soapVersion); 1.75 if (action == null) 1.76 return true; 1.77 1.78 @@ -370,7 +366,9 @@ 1.79 } 1.80 1.81 protected void validateSOAPAction(Packet packet) { 1.82 - String gotA = packet.getMessage().getHeaders().getAction(addressingVersion, soapVersion); 1.83 + String gotA = AddressingUtils.getAction( 1.84 + packet.getMessage().getHeaders(), 1.85 + addressingVersion, soapVersion); 1.86 if (gotA == null) 1.87 throw new WebServiceException(AddressingMessages.VALIDATION_SERVER_NULL_ACTION()); 1.88 if(packet.soapAction != null && !packet.soapAction.equals("\"\"") && !packet.soapAction.equals("\""+gotA+"\"")) {