You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by pr...@apache.org on 2007/05/12 11:57:35 UTC

svn commit: r537370 - in /webservices/axis2/trunk/java/modules/addressing: src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java

Author: pradine
Date: Sat May 12 02:57:34 2007
New Revision: 537370

URL: http://svn.apache.org/viewvc?view=rev&rev=537370
Log:
Resolve JIRA issue AXIS2-2646.

Modified:
    webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java
    webservices/axis2/trunk/java/modules/addressing/test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java

Modified: webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java?view=diff&rev=537370&r1=537369&r2=537370
==============================================================================
--- webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java (original)
+++ webservices/axis2/trunk/java/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingFinalInHandler.java Sat May 12 02:57:34 2007
@@ -77,8 +77,25 @@
 
     protected void setDefaults(ArrayList alreadyFoundAddrHeader, MessageContext messageContext) {
         //According to the WS-Addressing spec, we should default the wsa:To header to the
-        //anonymous URL. Doing that, however, might prevent a different value from being
-        //used instead, such as the transport URL.
+        //anonymous URI. Doing that, however, might prevent a different value from being
+        //used instead, such as the transport URL. Therefore, we only apply the default
+        //on the inbound response side of a synchronous request-response exchange.
+        if (!alreadyFoundAddrHeader.contains(WSA_TO) && !messageContext.isServerSide()) {
+            Options messageContextOptions = messageContext.getOptions();
+            EndpointReference epr = messageContextOptions.getTo();
+
+            if (epr == null) {
+                epr = new EndpointReference("");
+                messageContextOptions.setTo(epr);
+            }
+
+            if (log.isTraceEnabled()) {
+                log.trace(messageContext.getLogIDString() +
+                        " setDefaults: Setting WS-Addressing default value for the To property.");
+            }
+
+            epr.setAddress(Final.WSA_ANONYMOUS_URL);
+        }
 
         if (!alreadyFoundAddrHeader.contains(WSA_REPLY_TO)) {
             Options messageContextOptions = messageContext.getOptions();

Modified: webservices/axis2/trunk/java/modules/addressing/test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/addressing/test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java?view=diff&rev=537370&r1=537369&r2=537370
==============================================================================
--- webservices/axis2/trunk/java/modules/addressing/test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java (original)
+++ webservices/axis2/trunk/java/modules/addressing/test/org/apache/axis2/handlers/addressing/AddressingFinalInHandlerTest.java Sat May 12 02:57:34 2007
@@ -167,8 +167,10 @@
         try {
             Options options = testMessageWithOmittedHeaders("noTo");
             EndpointReference epr = options.getTo();
+            String address = epr.getAddress();
 
-            assertNull("The To endpoint reference is not null.", epr);
+            assertEquals("The address of the To endpoint reference is not the anonymous URI.",
+                         AddressingConstants.Final.WSA_ANONYMOUS_URL, address);
         }
         catch (AxisFault af) {
             af.printStackTrace();



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org