Author: dkulp
Date: Tue Mar 25 08:37:31 2008
New Revision: 640863

URL: http://svn.apache.org/viewvc?rev=640863&view=rev
Log:
[CXF-1486] Fix problems of putting primitives in generics for 
AsyncHandlers/Response objects

Modified:
    
incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/OperationProcessor.java
    
incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/hello_world_async.wsdl

Modified: 
incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/OperationProcessor.java
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/OperationProcessor.java?rev=640863&r1=640862&r2=640863&view=diff
==============================================================================
--- 
incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/OperationProcessor.java
 (original)
+++ 
incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/main/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/OperationProcessor.java
 Tue Mar 25 08:37:31 2008
@@ -26,6 +26,7 @@
 
 import javax.jws.WebParam;
 
+import org.apache.cxf.jaxb.JAXBUtils;
 import org.apache.cxf.service.model.FaultInfo;
 import org.apache.cxf.service.model.MessageInfo;
 import org.apache.cxf.service.model.MessagePartInfo;
@@ -242,6 +243,10 @@
             response = wrapperResponse.getClassName();
         } else {
             response = method.getReturn().getClassName();
+        }
+        Class<?> mappedClass = JAXBUtils.holderClass(response);
+        if (mappedClass != null) {
+            response = mappedClass.getName();
         }
 
         StringBuffer sb = new StringBuffer();

Modified: 
incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/hello_world_async.wsdl
URL: 
http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/hello_world_async.wsdl?rev=640863&r1=640862&r2=640863&view=diff
==============================================================================
--- 
incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/hello_world_async.wsdl
 (original)
+++ 
incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/hello_world_async.wsdl
 Tue Mar 25 08:37:31 2008
@@ -51,6 +51,8 @@
                    </sequence>
                </complexType>
            </element>          
+       <element name="testInt" type="xsd:int"/>
+        <element name="testIntResponse" type="xsd:int"/>
        </schema>
     </wsdl:types>
     <wsdl:message name="greetMeSometimeRequest">
@@ -59,15 +61,34 @@
     <wsdl:message name="greetMeSometimeResponse">
        <wsdl:part name="out" element="x1:greetMeSometimeResponse"/>
     </wsdl:message>
+    <wsdl:message name="testIntRequest">
+       <wsdl:part name="parameters" element="x1:testInt"></wsdl:part>
+    </wsdl:message>
+    <wsdl:message name="testIntResponse">
+       <wsdl:part name="parameters" element="x1:testIntResponse"></wsdl:part>
+    </wsdl:message>
     <wsdl:portType name="GreeterAsync">
        <wsdl:operation name="greetMeSometime">
            <wsdl:input name="greetMeSometimeRequest" 
message="tns:greetMeSometimeRequest"/>
            <wsdl:output name="greetMeSometimeResponse" 
message="tns:greetMeSometimeResponse"/>
        </wsdl:operation>
+       <wsdl:operation name="testInt">
+               <wsdl:input message="tns:testIntRequest"></wsdl:input>
+               <wsdl:output message="tns:testIntResponse"></wsdl:output>
+       </wsdl:operation>
     </wsdl:portType>
     <wsdl:binding name="GreeterAsync_SOAPBinding" type="tns:GreeterAsync">
        <soap:binding style="document" 
transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="greetMeSometime">
+           <soap:operation style="document"/>
+           <wsdl:input>
+               <soap:body use="literal"/>
+           </wsdl:input>
+           <wsdl:output>
+               <soap:body use="literal"/>
+           </wsdl:output>
+       </wsdl:operation>
+       <wsdl:operation name="testInt">
            <soap:operation style="document"/>
            <wsdl:input>
                <soap:body use="literal"/>


Reply via email to