You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by mm...@apache.org on 2007/10/19 12:05:11 UTC

svn commit: r586360 [2/2] - in /incubator/cxf/trunk/tools: common/ common/src/main/java/org/apache/cxf/tools/common/model/ common/src/test/java/org/apache/cxf/tools/common/model/ javato/ws/src/main/java/org/apache/cxf/tools/java2wsdl/generator/wsdl11/a...

Modified: incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebMethodAnnotatorTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebMethodAnnotatorTest.java?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebMethodAnnotatorTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebMethodAnnotatorTest.java Fri Oct 19 03:05:03 2007
@@ -19,10 +19,11 @@
 
 package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator;
 
+import java.util.List;
 import java.util.Map;
 
-
-import org.apache.cxf.tools.common.model.JavaAnnotation;
+import org.apache.cxf.tools.common.model.JAnnotation;
+import org.apache.cxf.tools.common.model.JAnnotationElement;
 import org.apache.cxf.tools.common.model.JavaMethod;
 import org.junit.Assert;
 import org.junit.Test;
@@ -35,7 +36,7 @@
         method.setName("echoFoo");
         method.setOperationName("echoFoo");
         method.annotate(new WebMethodAnnotator());
-        Map<String, JavaAnnotation> annotations = method.getAnnotationMap();
+        Map<String, JAnnotation> annotations = method.getAnnotationMap();
         assertNotNull(annotations);
         assertEquals(1, annotations.size());
         assertEquals("WebMethod", annotations.keySet().iterator().next());
@@ -45,15 +46,16 @@
     public void testAddWebResultAnnotation() throws Exception {
         JavaMethod method = new JavaMethod();
         method.annotate(new WebResultAnnotator());
-        Map<String, JavaAnnotation> annotations = method.getAnnotationMap();
+        Map<String, JAnnotation> annotations = method.getAnnotationMap();
         assertNotNull(annotations);
         assertEquals(1, annotations.size());
         assertEquals("WebResult", annotations.keySet().iterator().next());
-        JavaAnnotation resultAnnotation = annotations.values().iterator().next();
-        Map<String, String> arguments = resultAnnotation.getArguments();
-        assertNotNull(arguments);
-        assertEquals(1, arguments.size());
-        assertEquals("name", arguments.keySet().iterator().next());
-        assertEquals("\"return\"", arguments.values().iterator().next());
+        JAnnotation resultAnnotation = annotations.get("WebResult");
+        assertEquals("@WebResult(name = \"return\")", resultAnnotation.toString());
+        List<JAnnotationElement> elements = resultAnnotation.getElements();
+        assertNotNull(elements);
+        assertEquals(1, elements.size());
+        assertEquals("name", elements.get(0).getName());
+        assertEquals("return", elements.get(0).getValue());
     }
 }

Modified: incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebParamAnnotatorTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebParamAnnotatorTest.java?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebParamAnnotatorTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/WebParamAnnotatorTest.java Fri Oct 19 03:05:03 2007
@@ -19,12 +19,13 @@
 
 package org.apache.cxf.tools.wsdlto.frontend.jaxws.processor.internal.annotator;
 
-import java.util.Map;
+import java.util.List;
 
 import javax.jws.soap.SOAPBinding;
 import javax.xml.namespace.QName;
 
-import org.apache.cxf.tools.common.model.JavaAnnotation;
+import org.apache.cxf.tools.common.model.JAnnotation;
+import org.apache.cxf.tools.common.model.JAnnotationElement;
 import org.apache.cxf.tools.common.model.JavaMethod;
 import org.apache.cxf.tools.common.model.JavaParameter;
 import org.junit.Assert;
@@ -58,11 +59,13 @@
         init(method, parameter, SOAPBinding.Style.DOCUMENT, true);
         parameter.annotate(new WebParamAnnotator());
 
-        JavaAnnotation annotation = parameter.getAnnotation();
-        Map<String, String> args = annotation.getArguments();
-        assertEquals(2, args.size());
-        assertEquals("\"http://apache.org/cxf\"", args.get("targetNamespace"));
-        assertEquals("\"x\"", args.get("name"));
+        JAnnotation annotation = parameter.getAnnotation();
+        assertEquals("@WebParam(name = \"x\", targetNamespace = \"http://apache.org/cxf\")", 
+                         annotation.toString());
+        List<JAnnotationElement> elements = annotation.getElements();
+        assertEquals(2, elements.size());
+        assertEquals("http://apache.org/cxf", elements.get(1).getValue());
+        assertEquals("x", elements.get(0).getValue());
         // XXX - order that attributes are appended to the string
         //       differs with the ibmjdk...
         //assertEquals("@WebParam(targetNamespace = \"http://apache.org/cxf\", name = \"x\")",
@@ -75,12 +78,12 @@
 
         parameter.annotate(new WebParamAnnotator());
 
-        JavaAnnotation annotation = parameter.getAnnotation();
-        Map<String, String> args = annotation.getArguments();
-        assertEquals(3, args.size());
-        assertEquals("\"http://apache.org/cxf\"", args.get("targetNamespace"));
-        assertEquals("\"y\"", args.get("partName"));
-        assertEquals("\"x\"", args.get("name"));
+        JAnnotation annotation = parameter.getAnnotation();
+        assertEquals("@WebParam(partName = \"y\", name = \"x\", " 
+                     + "targetNamespace = \"http://apache.org/cxf\")", 
+                         annotation.toString());
+        List<JAnnotationElement> elements = annotation.getElements();
+        assertEquals(3, elements.size());
         // XXX - order that attributes are appended to the string
         //       differs with the ibmjdk...
         //assertEquals(
@@ -92,8 +95,8 @@
     public void testAnnotateRPC() throws Exception {
         init(method, parameter, SOAPBinding.Style.RPC, true);
         parameter.annotate(new WebParamAnnotator());
-        JavaAnnotation annotation = parameter.getAnnotation();
-        assertEquals(2, annotation.getArguments().size());
+        JAnnotation annotation = parameter.getAnnotation();
+        assertEquals(2, annotation.getElements().size());
         assertEquals("@WebParam(partName = \"y\", name = \"y\")",
                      annotation.toString());
     }

Modified: incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/XmlSeeAlsoAnnotatorTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/XmlSeeAlsoAnnotatorTest.java?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/XmlSeeAlsoAnnotatorTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/frontend/jaxws/src/test/java/org/apache/cxf/tools/wsdlto/frontend/jaxws/processor/internal/annotator/XmlSeeAlsoAnnotatorTest.java Fri Oct 19 03:05:03 2007
@@ -42,6 +42,6 @@
         assertEquals("javax.xml.bind.annotation.XmlSeeAlso", iter.next());
      
         assertEquals("@XmlSeeAlso({" + ObjectFactory.class.getName() + ".class})", 
-                     intf.getAnnotations().iterator().next());
+                     intf.getAnnotations().iterator().next().toString());
     }
 }

Modified: incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java Fri Oct 19 03:05:03 2007
@@ -499,14 +499,11 @@
                                       getLocation("/wsdl2java_wsdl/hello-mime.wsdl")};
 
         WSDLToJava.main(args);
+
         assertFileEquals(getClass().getResource("expected/expected_hello_mime").getFile(),
                          output.getCanonicalPath() + "/org/apache/hello_world_mime/Hello.java");
-
-
-
     }
 
-
     @Test
     public void testWebResult() throws Exception {
 
@@ -514,9 +511,12 @@
         processor.setContext(env);
         processor.execute();
 
-        assertFileEquals(getClass().getResource("expected/expected_sayHi").getFile(),
-                         output.getCanonicalPath() + "/org/apache/sayhi/SayHi.java");
-
+        String results = getStringFromFile(new File(output.getCanonicalPath(), 
+                                                    "org/apache/sayhi/SayHi.java"));
+        assertTrue(results.trim().length() > 0);
+        assertTrue(results.indexOf("@WebResult(name  =  \"return\",  " 
+                                   + "targetNamespace  =  \"http://apache.org/sayHi\")") != -1);
+        assertTrue(results.indexOf("@WebResult(name  =  \"return\",  targetNamespace  =  \"\")") != -1);
     }
 
 
@@ -720,7 +720,8 @@
         String results = getStringFromFile(new File(output.getCanonicalPath(), 
                                                     "soapinterface/ems/esendex/com/AccountServiceSoap.java"));
         assertTrue(results.indexOf("public  int  getMessageLimit") != -1);
-        assertTrue(results.indexOf("header  =  true,  name  =  \"MessengerHeader") != -1);
+        assertTrue(results.indexOf("name  =  \"MessengerHeader") != -1);
+        assertTrue(results.indexOf("header  =  true") != -1);
     }
     
     @Test

Modified: incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenTest.java?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenTest.java Fri Oct 19 03:05:03 2007
@@ -1132,4 +1132,17 @@
         String contents = getStringFromFile(sei);
         assertTrue(contents.indexOf("@XmlSeeAlso({ObjectFactory.class})") != -1);
     }
+
+    @Test
+    public void testWSAction() throws Exception {
+        env.put(ToolConstants.CFG_WSDLURL, getLocation("/wsdl2java_wsdl/wsdl_addr.wsdl"));
+
+        processor.setContext(env);
+        processor.execute();
+
+//         File sei = new File(output, "type_substitution/server/CarDealer.java");
+//         assertTrue(output.exists());
+//         String contents = getStringFromFile(sei);
+//         assertTrue(contents.indexOf("@XmlSeeAlso({ObjectFactory.class})") != -1);
+    }
 }

Modified: incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/expected/expected_hello_mime
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/expected/expected_hello_mime?rev=586360&r1=586359&r2=586360&view=diff
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/expected/expected_hello_mime (original)
+++ incubator/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/expected/expected_hello_mime Fri Oct 19 03:05:03 2007
@@ -16,15 +16,17 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+
+
 package org.apache.hello_world_mime;
 
-import javax.jws.WebParam.Mode;
+import javax.jws.WebMethod;
 import javax.jws.WebParam;
+import javax.jws.WebParam.Mode;
+import javax.jws.WebResult;
 import javax.jws.WebService;
-import javax.jws.soap.SOAPBinding.Style;
 import javax.jws.soap.SOAPBinding;
-import javax.jws.WebMethod;
-import javax.jws.WebResult;
+import javax.jws.soap.SOAPBinding.ParameterStyle;
 import javax.xml.bind.annotation.XmlSeeAlso;
 import javax.xml.ws.RequestWrapper;
 import javax.xml.ws.ResponseWrapper;
@@ -36,28 +38,28 @@
 public interface Hello {
 
     @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
-    @WebResult(targetNamespace = "http://apache.org/hello_world_mime/types", partName = "mime", name = "addressRes")
+    @WebResult(name = "addressRes", targetNamespace = "http://apache.org/hello_world_mime/types", partName = "mime")
     @WebMethod
     public javax.xml.transform.Source address(
-        @WebParam(targetNamespace = "http://apache.org/hello_world_mime/types", partName = "mime", name = "address")
+        @WebParam(partName = "mime", name = "address", targetNamespace = "http://apache.org/hello_world_mime/types")
         org.apache.cxf.mime.Address mime
     );
 
     @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
     @WebMethod
     public void helloMime(
-        @WebParam(targetNamespace = "http://apache.org/hello_world_mime/types", partName = "body", name = "body")
+        @WebParam(partName = "body", name = "body", targetNamespace = "http://apache.org/hello_world_mime/types")
         java.lang.String body,
-        @WebParam(targetNamespace = "", mode = Mode.INOUT, partName = "mime", name = "mime")
+        @WebParam(partName = "mime", mode = WebParam.Mode.INOUT, name = "mime", targetNamespace = "")
         javax.xml.ws.Holder<java.awt.Image> mime
     );
 
     @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
     @WebMethod
     public void hello(
-        @WebParam(targetNamespace = "http://apache.org/hello_world_mime/types", partName = "body", name = "body")
+        @WebParam(partName = "body", name = "body", targetNamespace = "http://apache.org/hello_world_mime/types")
         java.lang.String body,
-        @WebParam(targetNamespace = "", mode = Mode.INOUT, partName = "mime", name = "mime")
+        @WebParam(partName = "mime", mode = WebParam.Mode.INOUT, name = "mime", targetNamespace = "")
         javax.xml.ws.Holder<byte[]> mime
     );
-}
\ No newline at end of file
+}

Added: incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/wsdl_addr.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/wsdl_addr.wsdl?rev=586360&view=auto
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/wsdl_addr.wsdl (added)
+++ incubator/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/wsdl_addr.wsdl Fri Oct 19 03:05:03 2007
@@ -0,0 +1,120 @@
+<definitions name="AddNumbers"  targetNamespace="http://example.com/" xmlns:tns="http://example.com/"
+	     xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	     xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+	     xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+	     xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl">
+    <types>
+	<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://example.com/">
+
+	    <complexType name="addNumbersResponse">
+		<sequence>
+		    <element name="return" type="xsd:int" />
+		</sequence>
+	    </complexType>
+	    <element name="addNumbersResponse" type="tns:addNumbersResponse" />
+	    <element name="addNumbers2Response" type="tns:addNumbersResponse" />
+	    <element name="addNumbers3Response" type="tns:addNumbersResponse" />
+
+	    <complexType name="addNumbers">
+		<sequence>
+		    <element name="number1" type="xsd:int" />
+		    <element name="number2" type="xsd:int" />
+		</sequence>
+	    </complexType>
+	    <element name="addNumbers" type="tns:addNumbers" />
+	    <element name="addNumbers2" type="tns:addNumbers" />
+	    <element name="addNumbers3" type="tns:addNumbers" />
+
+	    <element name="AddNumbersFault" type="tns:AddNumbersFault" />
+	    <complexType name="AddNumbersFault">
+		<sequence>
+		    <element name="detail" type="xsd:string" />
+		    <element name="message" type="xsd:string" />
+		</sequence>
+	    </complexType>
+	</xsd:schema>
+    </types>
+    <message name="addNumbers">
+	<part name="parameters" element="tns:addNumbers" />
+    </message>
+    <message name="addNumbersResponse">
+	<part name="result" element="tns:addNumbersResponse" />
+    </message>
+    <message name="addNumbersFault">
+	<part name="AddNumbersFault" element="tns:AddNumbersFault" />
+    </message>
+    <message name="addNumbers2">
+	<part name="parameters" element="tns:addNumbers2" />
+    </message>
+    <message name="addNumbers2Response">
+	<part name="result" element="tns:addNumbers2Response" />
+    </message>
+    <message name="addNumbers3">
+	<part name="parameters" element="tns:addNumbers3" />
+    </message>
+    <message name="addNumbers3Response">
+	<part name="result" element="tns:addNumbers3Response" />
+    </message>
+    <portType name="AddNumbersPortType">
+	<operation name="addNumbers">
+	    <input message="tns:addNumbers"/>
+	    <output message="tns:addNumbersResponse"/>
+	    <fault name="addNumbersFault" message="tns:addNumbersFault"/>
+	</operation>
+	<operation name="addNumbers2">
+	    <input message="tns:addNumbers2" name="add2In"/>
+	    <output message="tns:addNumbers2Response" name="add2Out"/>
+	    <fault name="addNumbersFault" message="tns:addNumbersFault"/>
+	</operation>
+	<operation name="addNumbers3">
+	    <input message="tns:addNumbers3" wsaw:Action="3in"/>
+	    <output message="tns:addNumbers3Response" wsaw:Action="3out"/>
+	    <fault name="addNumbersFault" message="tns:addNumbersFault" wsaw:Action="3fault"/>
+	</operation>
+    </portType>
+    <binding name="AddNumbersBinding" type="tns:AddNumbersPortType">
+	<wsaw:UsingAddressing wsdl:required="false" />
+	<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
+	<operation name="addNumbers">
+	    <soap:operation soapAction="" />
+	    <input>
+		<soap:body use="literal" />
+	    </input>
+	    <output>
+		<soap:body use="literal" />
+	    </output>
+	    <fault name="addNumbersFault">
+		<soap:fault name="addNumbersFault" use="literal" />
+	    </fault>
+	</operation>
+	<operation name="addNumbers2">
+	    <soap:operation soapAction="" />
+	    <input>
+		<soap:body use="literal" />
+	    </input>
+	    <output>
+		<soap:body use="literal" />
+	    </output>
+	    <fault name="addNumbersFault">
+		<soap:fault name="addNumbersFault" use="literal" />
+	    </fault>
+	</operation>
+	<operation name="addNumbers3">
+	    <soap:operation soapAction="" />
+	    <input>
+		<soap:body use="literal" />
+	    </input>
+	    <output>
+		<soap:body use="literal" />
+	    </output>
+	    <fault name="addNumbersFault">
+		<soap:fault name="addNumbersFault" use="literal" />
+	    </fault>
+	</operation>
+    </binding>
+    <service name="AddNumbersService">
+	<port name="AddNumbersPort" binding="tns:AddNumbersBinding">
+	    <soap:address location="REPLACE_WITH_ACTUAL_URL" />
+	</port>
+    </service>
+</definitions>
\ No newline at end of file