Author: dkulp
Date: Mon May 28 06:55:39 2007
New Revision: 542231

URL: http://svn.apache.org/viewvc?view=rev&rev=542231
Log:
Fix issues with Doc/Lit/Bare part names not matching the JWS spec

Modified:
    
incubator/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceConfiguration.java
    
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
    
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
    
incubator/cxf/trunk/tools/javato/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/expected/stock_noanno_bare.wsdl

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=542231&r1=542230&r2=542231
==============================================================================
--- 
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
 Mon May 28 06:55:39 2007
@@ -189,7 +189,6 @@
     private QName getPartName(OperationInfo op, Method method,
                               int paramNumber, MessageInfo mi, String prefix, 
boolean isIn) {
         int partIndex = getPartIndex(method, paramNumber, isIn);
-        
         method = getDeclaredMethod(method);
         WebParam param = getWebParam(method, paramNumber);
         String tns = mi.getName().getNamespaceURI();
@@ -208,7 +207,12 @@
             }
             ret = new QName(tns, local);
         } else {
-            ret = new QName(tns, getDefaultLocalName(op, method, paramNumber, 
partIndex, prefix));
+            if (Boolean.TRUE.equals(isRPC(method)) || 
!Boolean.FALSE.equals(isWrapped(method))) {
+                ret = new QName(tns, getDefaultLocalName(op, method, 
paramNumber, partIndex, prefix));
+            } else {
+                ret = new QName(tns, getOperationName(op.getInterface(),
+                                                      method).getLocalPart());
+            }
         }
         return ret;
     }
@@ -261,7 +265,14 @@
         }
 
         if (local == null || local.length() == 0) {
-            local = getDefaultLocalName(op, method, paramNumber, curSize, 
prefix);
+            if (Boolean.TRUE.equals(isRPC(method)) || 
!Boolean.FALSE.equals(isWrapped(method))) {
+                local = getDefaultLocalName(op, method, paramNumber, curSize, 
prefix);
+            } else {
+                local = getOperationName(op.getInterface(), 
method).getLocalPart();
+                if (!input) {
+                    local += "Response";
+                }
+            }
         }
         
         return new QName(tns, local);
@@ -325,7 +336,12 @@
             }
 
             if (local == null || local.length() == 0) {
-                local = getDefaultLocalName(op, method, paramNumber, 
op.getOutput().size(), "return");
+                if (Boolean.TRUE.equals(isRPC(method)) || 
!Boolean.FALSE.equals(isWrapped(method))) {
+                    local = getDefaultLocalName(op, method, paramNumber, 
op.getOutput().size(), "return");
+                } else {
+                    local = getOperationName(op.getInterface(),
+                                             method).getLocalPart() + 
"Response";
+                }
             }
             
             return new QName(tns, local);
@@ -356,7 +372,12 @@
                 }
                 ret = new QName(tns, local);
             } else {
-                ret = new QName(tns, "return");
+                if (Boolean.TRUE.equals(isRPC(method)) || 
!Boolean.FALSE.equals(isWrapped(method))) {
+                    ret = new QName(tns, "return");
+                } else {
+                    ret = new QName(tns, getOperationName(op.getInterface(),
+                                                          
method).getLocalPart() + "Response");
+                }
             }
             return ret;
         }        

Modified: 
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java?view=diff&rev=542231&r1=542230&r2=542231
==============================================================================
--- 
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
 (original)
+++ 
incubator/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/CodeFirstTest.java
 Mon May 28 06:55:39 2007
@@ -72,11 +72,11 @@
                     + "/xsd:[EMAIL PROTECTED]'ns0:stringArray']", wsdl);
         
         assertValid("/wsdl:definitions/wsdl:[EMAIL PROTECTED]'sayHi']"
-                    + "/wsdl:[EMAIL PROTECTED]'ns1:sayHi'[EMAIL 
PROTECTED]'arg0']",
+                    + "/wsdl:[EMAIL PROTECTED]'ns1:sayHi'[EMAIL 
PROTECTED]'sayHi']",
                     wsdl);
 
         assertValid("/wsdl:definitions/wsdl:[EMAIL 
PROTECTED]'getGreetingsResponse']"
-                    + "/wsdl:[EMAIL PROTECTED]'ns1:getGreetingsResponse'[EMAIL 
PROTECTED]'return']",
+                    + "/wsdl:[EMAIL PROTECTED]'ns1:getGreetingsResponse'[EMAIL 
PROTECTED]'getGreetingsResponse']",
                     wsdl);    
 
         assertValid("/wsdl:definitions/wsdl:binding/wsdl:[EMAIL 
PROTECTED]'getGreetings']"

Modified: 
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java?view=diff&rev=542231&r1=542230&r2=542231
==============================================================================
--- 
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
 (original)
+++ 
incubator/cxf/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java
 Mon May 28 06:55:39 2007
@@ -769,7 +769,7 @@
                     initializeParameter(part, paramClasses[j], 
method.getGenericParameterTypes()[j]);
                     part.setIndex(j);
 
-                    if (isRPC(method) && !isWrapped(method)) {
+                    if (!isRPC(method) && !isWrapped(method)) {
                         part.setProperty(ELEMENT_NAME, q2);
                     }
 

Modified: 
incubator/cxf/trunk/tools/javato/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/expected/stock_noanno_bare.wsdl
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/javato/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/expected/stock_noanno_bare.wsdl?view=diff&rev=542231&r1=542230&r2=542231
==============================================================================
--- 
incubator/cxf/trunk/tools/javato/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/expected/stock_noanno_bare.wsdl
 (original)
+++ 
incubator/cxf/trunk/tools/javato/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/expected/stock_noanno_bare.wsdl
 Mon May 28 06:55:39 2007
@@ -7,11 +7,11 @@
 </xsd:schema>
   </wsdl:types>
   <wsdl:message name="getPriceResponse">
-    <wsdl:part name="return" element="ns1:getPriceResponse">
+    <wsdl:part name="getPriceResponse" element="ns1:getPriceResponse">
     </wsdl:part>
   </wsdl:message>
   <wsdl:message name="getPrice">
-    <wsdl:part name="arg0" element="ns1:getPrice">
+    <wsdl:part name="getPrice" element="ns1:getPrice">
     </wsdl:part>
   </wsdl:message>
   <wsdl:portType name="Stock">


Reply via email to