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 de...@apache.org on 2006/03/28 06:54:06 UTC

svn commit: r389393 - in /webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description: ClientUtils.java OutInAxisOperation.java OutOnlyAxisOperation.java

Author: deepal
Date: Mon Mar 27 20:54:04 2006
New Revision: 389393

URL: http://svn.apache.org/viewcvs?rev=389393&view=rev
Log:
to set different To for wsa:to and actual to 
- it was there but did not work properly
MessageContextConstants.TRANSPORT_URL

Modified:
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ClientUtils.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutInAxisOperation.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutOnlyAxisOperation.java

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ClientUtils.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ClientUtils.java?rev=389393&r1=389392&r2=389393&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ClientUtils.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/ClientUtils.java Mon Mar 27 20:54:04 2006
@@ -5,6 +5,7 @@
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.axis2.client.Options;
 import org.apache.axis2.context.MessageContext;
+import org.apache.axis2.context.MessageContextConstants;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.apache.axis2.engine.ListenerManager;
 import org.apache.axis2.i18n.Messages;
@@ -18,24 +19,35 @@
 public class ClientUtils {
 
     public static synchronized TransportOutDescription inferOutTransport(AxisConfiguration ac,
-                                                            EndpointReference epr) throws AxisFault {
-        if (epr == null || (epr.getAddress() == null)) {
-            throw new AxisFault(Messages.getMessage("cannotInferTransport"));
-        }
-
-        String uri = epr.getAddress();
-        int index = uri.indexOf(':');
-        String transport = (index > 0) ? uri.substring(0, index) : null;
-        if (transport != null) {
-            return ac.getTransportOut(new QName(transport));
+                                                                         EndpointReference epr,
+                                                                         MessageContext msgctx) throws AxisFault {
+        String transportURI = (String) msgctx.getProperty(MessageContextConstants.TRANSPORT_URL);
+        if (transportURI != null && !"".equals(transportURI)) {
+            int index = transportURI.indexOf(':');
+            String transport = (index > 0) ? transportURI.substring(0, index) : null;
+            if (transport != null) {
+                return ac.getTransportOut(new QName(transport));
+            } else {
+                throw new AxisFault(Messages.getMessage("cannotInferTransport"));
+            }
         } else {
-            throw new AxisFault(Messages.getMessage("cannotInferTransport"));
+            if (epr == null || (epr.getAddress() == null)) {
+                throw new AxisFault(Messages.getMessage("cannotInferTransport"));
+            }
+            String uri = epr.getAddress();
+            int index = uri.indexOf(':');
+            String transport = (index > 0) ? uri.substring(0, index) : null;
+            if (transport != null) {
+                return ac.getTransportOut(new QName(transport));
+            } else {
+                throw new AxisFault(Messages.getMessage("cannotInferTransport"));
+            }
         }
     }
 
     public static synchronized TransportInDescription inferInTransport(AxisConfiguration ac,
-                                                          Options options,
-                                                          MessageContext msgCtxt) throws AxisFault {
+                                                                       Options options,
+                                                                       MessageContext msgCtxt) throws AxisFault {
         String listenerTransportProtocol = options.getTransportInProtocol();
         TransportInDescription transportIn = null;
         if (options.isUseSeparateListener()) {

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutInAxisOperation.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutInAxisOperation.java?rev=389393&r1=389392&r2=389393&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutInAxisOperation.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutInAxisOperation.java Mon Mar 27 20:54:04 2006
@@ -223,7 +223,7 @@
             EndpointReference toEPR = (options.getTo() != null) ? options
                     .getTo() : mc.getTo();
             transportOut = ClientUtils.inferOutTransport(cc
-                    .getAxisConfiguration(), toEPR);
+                    .getAxisConfiguration(), toEPR ,mc);
         }
         mc.setTransportOut(transportOut);
 

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutOnlyAxisOperation.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutOnlyAxisOperation.java?rev=389393&r1=389392&r2=389393&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutOnlyAxisOperation.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/description/OutOnlyAxisOperation.java Mon Mar 27 20:54:04 2006
@@ -315,7 +315,7 @@
             EndpointReference toEPR = (options.getTo() != null) ? options
                     .getTo() : mc.getTo();
             senderTransport = ClientUtils.inferOutTransport(cc
-                    .getAxisConfiguration(), toEPR);
+                    .getAxisConfiguration(), toEPR,mc);
         }
         mc.setTransportOut(senderTransport);