You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by jl...@apache.org on 2006/12/11 08:37:00 UTC

svn commit: r485539 - in /incubator/cxf/trunk: distribution/src/main/release/samples/restful/ distribution/src/main/release/samples/restful/src/demo/restful/client/ systests/src/test/java/org/apache/cxf/systest/rest/

Author: jliu
Date: Sun Dec 10 23:36:59 2006
New Revision: 485539

URL: http://svn.apache.org/viewvc?view=rev&rev=485539
Log:
Update restful sample, remove the presence of wsdl file from client side. 

Modified:
    incubator/cxf/trunk/distribution/src/main/release/samples/restful/README.txt
    incubator/cxf/trunk/distribution/src/main/release/samples/restful/build.xml
    incubator/cxf/trunk/distribution/src/main/release/samples/restful/src/demo/restful/client/Client.java
    incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/rest/RestClientServerTest.java

Modified: incubator/cxf/trunk/distribution/src/main/release/samples/restful/README.txt
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/distribution/src/main/release/samples/restful/README.txt?view=diff&rev=485539&r1=485538&r2=485539
==============================================================================
--- incubator/cxf/trunk/distribution/src/main/release/samples/restful/README.txt (original)
+++ incubator/cxf/trunk/distribution/src/main/release/samples/restful/README.txt Sun Dec 10 23:36:59 2006
@@ -38,7 +38,7 @@
 <Customer>
   <id>1234</id>
   <name>John</name>
-  <phoneNumber>234567</phoneNumber>
+  <phoneNumber>123456</phoneNumber>
 </Customer>
 
 updates customer 1234 with the data provided. 
@@ -140,7 +140,7 @@
          demo.restful.server.Server &
 
     java -Djava.util.logging.config.file=$CXF_HOME/etc/logging.properties
-         demo.restful.client.Client ./wsdl/hello_world_xml_wrapped.wsdl
+         demo.restful.client.Client
 
 The server process starts in the background.  After running the client,
 use the kill command to terminate the server process.
@@ -151,7 +151,7 @@
          demo.restful.server.Server
 
     java -Djava.util.logging.config.file=%CXF_HOME%\etc\logging.properties
-       demo.restful.client.Client .\wsdl\hello_world_xml_wrapped.wsdl
+       demo.restful.client.Client
 
 A new command windows opens for the server process.  After running the
 client, terminate the server process by issuing Ctrl-C in its command window.

Modified: incubator/cxf/trunk/distribution/src/main/release/samples/restful/build.xml
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/distribution/src/main/release/samples/restful/build.xml?view=diff&rev=485539&r1=485538&r2=485539
==============================================================================
--- incubator/cxf/trunk/distribution/src/main/release/samples/restful/build.xml (original)
+++ incubator/cxf/trunk/distribution/src/main/release/samples/restful/build.xml Sun Dec 10 23:36:59 2006
@@ -22,8 +22,7 @@
     <import file="../common_build.xml"/>        
         
     <target name="client" description="run demo client" depends="build">
-        <cxfrun classname="demo.restful.client.Client"
-            param1="${basedir}/wsdl/hello_world_xml_wrapped.wsdl"/>
+        <cxfrun classname="demo.restful.client.Client"/>
     </target> 
         
     <target name="server" description="run demo server" depends="build">

Modified: incubator/cxf/trunk/distribution/src/main/release/samples/restful/src/demo/restful/client/Client.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/distribution/src/main/release/samples/restful/src/demo/restful/client/Client.java?view=diff&rev=485539&r1=485538&r2=485539
==============================================================================
--- incubator/cxf/trunk/distribution/src/main/release/samples/restful/src/demo/restful/client/Client.java (original)
+++ incubator/cxf/trunk/distribution/src/main/release/samples/restful/src/demo/restful/client/Client.java Sun Dec 10 23:36:59 2006
@@ -53,42 +53,13 @@
     }
 
     public static void main(String args[]) throws Exception {
-        if (args.length == 0) {
-            System.out.println("please specify wsdl");
-            System.exit(1);
-        }
-
-        URL wsdlURL;
-        File wsdlFile = new File(args[0]);
-        if (wsdlFile.exists()) {
-            wsdlURL = wsdlFile.toURL();
-        } else {
-            wsdlURL = new URL(args[0]);
-        }
-
-        System.out.println(wsdlURL + "\n\n");
-
         QName serviceName = new QName("http://apache.org/hello_world_xml_http/wrapped",
                                                 "cutomerservice");
         QName portName = new QName("http://apache.org/hello_world_xml_http/wrapped",
                                              "RestProviderPort");
-
-        Cutomerservice cutomerservice = new Cutomerservice(wsdlURL, serviceName);
-
-        Client client = new Client();
-        InputStream is = client.getClass().getResourceAsStream("CustomerJohnReq.xml");
-        Document doc = XMLUtils.parse(is);
-        DOMSource reqMsg = new DOMSource(doc);
-
-        // Sent HTTP POST request to update customer info
-        Dispatch<DOMSource> disp = cutomerservice.createDispatch(portName, DOMSource.class,
-                                   Service.Mode.PAYLOAD);
-        System.out.println("Invoking server through HTTP POST to update customer info");
-        DOMSource result = disp.invoke(reqMsg);
-        printSource(result);
+        String endpointAddress = "http://localhost:9000/customerservice/customer";
 
         // Sent HTTP GET request to query all customer info
-        String endpointAddress = "http://localhost:9000/customerservice/customer";
         URL url = new URL(endpointAddress);
         System.out.println("Invoking server through HTTP GET to query all customer info");
         InputStream in = url.openStream();
@@ -96,31 +67,42 @@
         printSource(source);
 
         // Sent HTTP GET request to query customer info
-        endpointAddress = "http://localhost:9000/customerservice/customer";
         url = new URL(endpointAddress + "?id=1234");
         System.out.println("Invoking server through HTTP GET to query customer info");
         in = url.openStream();
         source = new StreamSource(in);
         printSource(source);
 
-        // Use Dispatch to send GET request to query customer info
-        endpointAddress =
-            "http://localhost:9000/customerservice/customer";
-        Service service = Service.create(serviceName);
+        // Sent HTTP GET request to query customer info using JAX-WS Dispatch
         URI endpointURI = new URI(endpointAddress.toString());
         String path = null;
         if (endpointURI != null) {
             path = endpointURI.getPath();
         }
-        service.addPort(portName, HTTPBinding.HTTP_BINDING, endpointAddress.toString());
-        Dispatch<Source> dispatch = service.createDispatch(portName, Source.class, Service.Mode.PAYLOAD);
-        Map<String, Object> requestContext = dispatch.getRequestContext();
+
+        Service service = Service.create(serviceName);
+        service.addPort(portName, HTTPBinding.HTTP_BINDING,  endpointAddress);
+        Dispatch<DOMSource> dispatcher = service.createDispatch(portName, DOMSource.class, Service.Mode.PAYLOAD);
+        Map<String, Object> requestContext = dispatcher.getRequestContext();
+
         requestContext.put(MessageContext.HTTP_REQUEST_METHOD, new String("GET"));
         requestContext.put(MessageContext.QUERY_STRING, "id=1234");
         requestContext.put(MessageContext.PATH_INFO, path);
-        System.out.println("Invoking Restful GET Request with query string ");
-        Source returnSource = dispatch.invoke(null);
+        System.out.println("Invoking server through HTTP GET to query customer info using JAX-WS Dispatch");
+        DOMSource returnSource = dispatcher.invoke(null);
         printSource(returnSource);
+
+        // Sent HTTP POST request to update customer info using JAX-WS Dispatch
+        Client client = new Client();
+        InputStream is = client.getClass().getResourceAsStream("CustomerJohnReq.xml");
+        Document doc = XMLUtils.parse(is);
+        DOMSource reqMsg = new DOMSource(doc);
+
+        requestContext.put(MessageContext.HTTP_REQUEST_METHOD, "POST");
+        System.out.println("Invoking server through HTTP POST to update customer info using JAX-WS Dispatch");
+        DOMSource result = dispatcher.invoke(reqMsg);
+        printSource(result);
+
         System.out.println("Client Invoking is succeeded!");
         System.exit(0);
     }

Modified: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/rest/RestClientServerTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/rest/RestClientServerTest.java?view=diff&rev=485539&r1=485538&r2=485539
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/rest/RestClientServerTest.java (original)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/rest/RestClientServerTest.java Sun Dec 10 23:36:59 2006
@@ -35,6 +35,7 @@
 
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.stream.StreamSource;
 import javax.xml.ws.Dispatch;
 
 import javax.xml.ws.Service;
@@ -67,9 +68,9 @@
                 assertTrue("server did not launch correctly", launchServer(Server.class));
             }
         };
-    }
-
-    public void testHttpPOSTDispatch() throws Exception {
+    }    
+   
+    public void testHttpPOSTDispatchWithWSDL() throws Exception {
         URL wsdl = getClass().getResource("/wsdl/hello_world_xml_wrapped.wsdl");
         assertNotNull(wsdl);
 
@@ -97,7 +98,20 @@
        
     }
 
-   
+    public void testHttpPOSTDispatch() throws Exception {
+        Service service = Service.create(serviceName);
+        service.addPort(portName, HTTPBinding.HTTP_BINDING,
+                        "http://localhost:9023/XMLService/RestProviderPort/Customer");
+        Dispatch<Source> dispatcher = service.createDispatch(portName, Source.class, Service.Mode.MESSAGE);
+        Map<String, Object> requestContext = dispatcher.getRequestContext();
+        requestContext.put(MessageContext.HTTP_REQUEST_METHOD, "POST");
+        InputStream is = getClass().getResourceAsStream("resources/CustomerJohnReq.xml");
+        Source result = dispatcher.invoke(new StreamSource(is));
+        String tempstring = source2String(result);
+        assertTrue("Result should start with Customer", tempstring.startsWith("<ns4:Customer"));
+        assertTrue("Result should have CustomerID", tempstring.lastIndexOf("CustomerID>123456<") > 0);
+    }
+    
     @SuppressWarnings("unchecked")
     public void testHttpGETDispatcher() throws Exception { 
         String endpointAddress =