You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2007/05/23 21:17:36 UTC

svn commit: r541037 - /incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java

Author: dkulp
Date: Wed May 23 12:17:35 2007
New Revision: 541037

URL: http://svn.apache.org/viewvc?view=rev&rev=541037
Log:
Fix issue where queries for wrapped doc/lit parts are getting the wrong namespace so matching methods with WSDL operations was failing.

Modified:
    incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java

Modified: incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java?view=diff&rev=541037&r1=541036&r2=541037
==============================================================================
--- incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java (original)
+++ incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java Wed May 23 12:17:35 2007
@@ -183,7 +183,7 @@
             return null;
         }
         
-        return getParameterName(op, method, paramNumber, op.getInput().size(), "arg");
+        return getParameterName(op, method, paramNumber, op.getInput().size(), "arg", true);
     }
 
     private QName getPartName(OperationInfo op, Method method,
@@ -235,7 +235,7 @@
     }
 
     private QName getParameterName(OperationInfo op, Method method, int paramNumber, 
-                                   int curSize, String prefix) {
+                                   int curSize, String prefix, boolean input) {
         method = getDeclaredMethod(method);
         WebParam param = getWebParam(method, paramNumber);
         String tns = null;
@@ -246,6 +246,17 @@
         }
         
         if (tns == null || tns.length() == 0) {
+            QName wrappername = null;
+            if (input) {
+                wrappername = getRequestWrapperName(op, method);
+            } else {
+                wrappername = getResponseWrapperName(op, method); 
+            }
+            if (wrappername != null) {
+                tns = wrappername.getNamespaceURI();
+            }
+        }
+        if (tns == null || tns.length() == 0) {
             tns = op.getName().getNamespaceURI();
         }
 
@@ -292,7 +303,7 @@
         method = getDeclaredMethod(method);
         
         if (paramNumber >= 0) {
-            return getParameterName(op, method, paramNumber, op.getOutput().size(), "return");
+            return getParameterName(op, method, paramNumber, op.getOutput().size(), "return", false);
         } else {
             WebResult webResult = getWebResult(method);
 
@@ -301,6 +312,12 @@
             if (webResult != null) {
                 tns = webResult.targetNamespace();
                 local = webResult.name();
+            }
+            if (tns == null || tns.length() == 0) {
+                QName wrappername = getResponseWrapperName(op, method);
+                if (wrappername != null) {
+                    tns = wrappername.getNamespaceURI();
+                }
             }
 
             if (tns == null || tns.length() == 0) {