Author: bimargulies
Date: Mon Jan 12 13:22:28 2009
New Revision: 733901

URL: http://svn.apache.org/viewvc?rev=733901&view=rev
Log:
Add a sample of a complex and messy Dynamic Client case.

Added:
    cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/  
 (props changed)
      - copied from r733872, 
cxf/trunk/distribution/src/main/release/samples/wsdl_first/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
   (with props)
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
   (with props)
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
   (with props)
Removed:
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/cxf.xml
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/Client.java
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/Get.java
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/SpringClient.java
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/client-beans.xml
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/GreeterImpl.java
Modified:
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/README.txt
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/build.xml
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/pom.xml
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/Server.java
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/SpringServer.java
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/server-beans.xml
    
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/cxf-servlet.xml

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Jan 12 13:22:28 2009
@@ -0,0 +1,2 @@
+build
+target

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/README.txt
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/README.txt?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/README.txt
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/README.txt
 Mon Jan 12 13:22:28 2009
@@ -1,31 +1,9 @@
-Hello World Demo using Document/Literal Style
+Hello World Demo using Document/Literal Style and a Dynamic Client
 =============================================
 
-This demo illustrates the use of the JAX-WS APIs to run a simple
-client against a standalone server using SOAP 1.1 over HTTP.
+This demo illustrates the use of the CXF dynamic client 
+against a standalone server using SOAP 1.1 over HTTP.
 
-It also shows how CXF configuration can be used to enable schema validation
-on the client and/or server side: By default the message parameters would not
-be validated, but the presence of the cxf.xml configuration file on
-the classpath, and its content change this default behavior:
-The configuration file specifies that 
-
-a) if a JAX-WS client proxy is created for port 
{http://apache.org/hello_world_soap_http}SoapPort
-it should have schema validation enabled.
-
-b) if a JAX-WS server endpoint is created for port 
{http://apache.org/hello_world_soap_http}SoapPort
-it should have schema validation enabled.
-
-The client's second greetMe invocation causes an exception (a marshalling
-error) on the client side, i.e. before the request with the invalid parameter
-goes on the wire.
-After commenting the definition of the <jaxws:client> element in cxf.xml you 
-will notice that the client's second greetMe invocation still throws an 
exception,
-but that this time the exception is caused by an unmarshalling error on the
-server side.
-Commenting both elements, or renaming/removing the cfg.xml file, and thus
-restoring the default behavior, results in the second greetMe invocation
-not causing an exception.
 
 Please review the README in the samples directory before continuing.
 

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/build.xml
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/build.xml?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/build.xml
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/build.xml
 Mon Jan 12 13:22:28 2009
@@ -23,17 +23,12 @@
         
     <target name="client" description="run demo client" depends="build">
         <property name="param" value=""/>
-        <cxfrun classname="demo.hw.client.Client"
-            param1="${basedir}/wsdl/hello_world.wsdl" 
+        <cxfrun classname="demo.hw.client.ComplexClient"
+            param1="${basedir}/wsdl/complex.wsdl" 
             param2="${op}" 
             param3="${param}"/>
     </target>
     
-    <target name="spring.client" description="run demo client which is created 
from the spring context" depends="build">
-        <property name="param" value=""/>
-        <cxfrun classname="demo.hw.client.SpringClient"/>
-    </target>     
-        
     <target name="server" description="run demo server" depends="build">
         <cxfrun classname="demo.hw.server.Server" 
             param1="${basedir}/wsdl/hello_world.wsdl"/>
@@ -43,18 +38,9 @@
         <cxfrun classname="demo.hw.server.SpringServer"/>
     </target>
 
-
-    <target name="client.get" description="run demo client through HTTP GET" 
depends="build">
-        <property name="param" value=""/>
-        <cxfrun classname="demo.hw.client.Get"
-            param1="${basedir}/wsdl/hello_world.wsdl" 
-            param2="${op}" 
-            param3="${param}"/>
-    </target>
-        
     <target name="generate.code">
         <echo level="info" message="Generating code using wsdl2java..."/>
-        <wsdl2java file="hello_world.wsdl"/>
+        <wsdl2java file="complex.wsdl"/>
     </target>
 
     <property name="cxf.war.file.name" value="helloworld"/>
@@ -64,6 +50,6 @@
 
     <target name="client-servlet" description="run demo client hitting 
servlet" depends="build">
         <property name="param" value=""/>
-        <cxfrun classname="demo.hw.client.Client" 
param1="${base.url}/helloworld/services/hello_world?wsdl" param2="${op}" 
param3="${param}"/>
+        <cxfrun classname="demo.hw.client.ComplexClient" 
param1="${base.url}/helloworld/services/complex?wsdl" param2="${op}" 
param3="${param}"/>
     </target> 
 </project>

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/pom.xml
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/pom.xml?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/pom.xml
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/pom.xml
 Mon Jan 12 13:22:28 2009
@@ -2,12 +2,14 @@
 <project>
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.cxf.samples</groupId>
-    <artifactId>wsdl_first</artifactId>
+    <artifactId>wsdl_first_dynamic_client</artifactId>
     <version>1.0</version>
+    <name>CXF Dynamic Client Sample</name>
     <properties>
         <cxf.version>[2,)</cxf.version>
     </properties>
     <build>
+        <defaultGoal>install</defaultGoal>
         <sourceDirectory>src</sourceDirectory>
         <plugins>
             <plugin>
@@ -28,7 +30,7 @@
                         <configuration>
                             <wsdlOptions>
                                 <wsdlOption>
-                                    
<wsdl>${basedir}/wsdl/hello_world.wsdl</wsdl>
+                                       
<wsdl>${basedir}/wsdl/complex.wsdl</wsdl>
                                 </wsdlOption>
                             </wsdlOptions>
                         </configuration>
@@ -79,9 +81,9 @@
                                     <goal>java</goal>
                                 </goals>
                                 <configuration>
-                                    
<mainClass>demo.hw.client.Client</mainClass>
+                                    
<mainClass>demo.hw.client.ComplexClient</mainClass>
                                     <arguments>
-                                        
<argument>${basedir}/wsdl/hello_world.wsdl</argument>
+                                        
<argument>http://localhost:9000/Complex?wsdl</argument>
                                     </arguments>
                                 </configuration>
                             </execution>

Added: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java?rev=733901&view=auto
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
 (added)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
 Mon Jan 12 13:22:28 2009
@@ -0,0 +1,112 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package demo.hw.client;
+
+import java.beans.BeanDescriptor;
+import java.beans.PropertyDescriptor;
+import java.io.File;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.apache.cxf.endpoint.Client;
+import org.apache.cxf.endpoint.ClientImpl;
+import org.apache.cxf.endpoint.Endpoint;
+import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
+import org.apache.cxf.service.model.BindingInfo;
+import org.apache.cxf.service.model.BindingMessageInfo;
+import org.apache.cxf.service.model.BindingOperationInfo;
+import org.apache.cxf.service.model.MessagePartInfo;
+import org.apache.cxf.service.model.ServiceInfo;
+
+/**
+ * 
+ */
+public final class ComplexClient {
+    
+    private static final QName SERVICE_NAME 
+        = new QName("http://complex.demo.cxf.apache.org/";, 
"ComplexImplService");
+    
+    private ComplexClient() {
+    }
+
+    /**
+     * @param args
+     */
+    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);
+        
+        JaxWsDynamicClientFactory factory = 
JaxWsDynamicClientFactory.newInstance();
+        Client client = factory.createClient(wsdlURL.toExternalForm(), 
SERVICE_NAME);
+        ClientImpl clientImpl = (ClientImpl) client;
+        Endpoint endpoint = clientImpl.getEndpoint();
+        ServiceInfo serviceInfo = 
endpoint.getService().getServiceInfos().get(0);
+        QName bindingName = new QName("http://complex.demo.cxf.apache.org/";, 
"ComplexImplServiceSoapBinding");
+        BindingInfo binding = serviceInfo.getBinding(bindingName);
+        //{
+        QName opName = new QName("http://Company.com/Application";, 
"GetAgentDetails");
+        BindingOperationInfo boi = binding.getOperation(opName);
+        BindingMessageInfo inputMessageInfo = boi.getInput();
+        List<MessagePartInfo> parts = inputMessageInfo.getMessageParts();
+        // only one part.
+        MessagePartInfo partInfo = parts.get(0);
+        Class<?> partClass = partInfo.getTypeClass();
+        System.out.println(partClass.getCanonicalName()); // GetAgentDetails
+        Object inputObject = partClass.newInstance();
+        // Unfortunately, the slot inside of the part object is also called 
'part'.
+        // this is the descriptor for get/set part inside the GetAgentDetails 
class.
+        PropertyDescriptor partPropertyDescriptor = new 
PropertyDescriptor("part", partClass);
+        // This is the type of the class which really contains all the 
parameter information.
+        Class<?> partPropType = partPropertyDescriptor.getPropertyType(); // 
AgentWSRequest
+        System.out.println(partPropType.getCanonicalName());
+        Object inputPartObject = partPropType.newInstance();
+        partPropertyDescriptor.getWriteMethod().invoke(inputObject, 
inputPartObject);
+        PropertyDescriptor numberPropertyDescriptor = new 
PropertyDescriptor("agentNumber", partPropType);
+        numberPropertyDescriptor.getWriteMethod().invoke(inputPartObject, new 
Integer(314159));
+
+        Object[] result = client.invoke(opName, inputObject);
+        Class<?> resultClass = result[0].getClass();
+        System.out.println(resultClass.getCanonicalName()); // 
GetAgentDetailsResponse
+        PropertyDescriptor resultDescriptor = new 
PropertyDescriptor("agentWSResponse", resultClass);
+        Object wsResponse = resultDescriptor.getReadMethod().invoke(result[0]);
+        Class<?> wsResponseClass = wsResponse.getClass();
+        System.out.println(wsResponseClass.getCanonicalName());
+        PropertyDescriptor agentNameDescriptor = new 
PropertyDescriptor("agentName", wsResponseClass);
+        String agentName = 
(String)agentNameDescriptor.getReadMethod().invoke(wsResponse);
+        System.out.println("Agent name: " + agentName);
+            
+    }
+
+}

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/client/ComplexClient.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/Server.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/Server.java?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/Server.java
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/Server.java
 Mon Jan 12 13:22:28 2009
@@ -21,13 +21,15 @@
 
 import javax.xml.ws.Endpoint;
 
+import org.apache.cxf.demo.complex.ComplexImpl;
+
 public class Server {
 
     protected Server() throws Exception {
         System.out.println("Starting Server");
-        Object implementor = new GreeterImpl();
-        String address = "http://localhost:9000/SoapContext/SoapPort";;
-        Endpoint.publish(address, implementor);
+        ComplexImpl complexImpl = new ComplexImpl();
+        String address = "http://localhost:9000/Complex";;
+        Endpoint.publish(address, complexImpl);
     }
 
     public static void main(String args[]) throws Exception {

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/SpringServer.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/SpringServer.java?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/SpringServer.java
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/SpringServer.java
 Mon Jan 12 13:22:28 2009
@@ -25,8 +25,8 @@
 
     protected SpringServer() throws Exception {
         System.out.println("Starting Server");
-        ClassPathXmlApplicationContext context 
-            = new ClassPathXmlApplicationContext(new String[] 
{"/demo/hw/server/server-beans.xml"});
+        // creating the context sets the server into motion.
+        new ClassPathXmlApplicationContext(new String[] 
{"/demo/hw/server/server-beans.xml"});
     }
 
     public static void main(String args[]) throws Exception {

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/server-beans.xml
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/server-beans.xml?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/server-beans.xml
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/demo/hw/server/server-beans.xml
 Mon Jan 12 13:22:28 2009
@@ -1,35 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!--
-       Licensed to the Apache Software Foundation (ASF) under one
-       or more contributor license agreements. See the NOTICE file
-       distributed with this work for additional information
-       regarding copyright ownership. The ASF licenses this file
-       to you under the Apache License, Version 2.0 (the
-       "License"); you may not use this file except in compliance
-       with the License. You may obtain a copy of the License at
-       
-       http://www.apache.org/licenses/LICENSE-2.0
-       
-       Unless required by applicable law or agreed to in writing,
-       software distributed under the License is distributed on an
-       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-       KIND, either express or implied. See the License for the
-       specific language governing permissions and limitations
-       under the License.
--->
-<!-- START SNIPPET: beans -->
+       <!--
+               Licensed to the Apache Software Foundation (ASF) under one or 
more
+               contributor license agreements. See the NOTICE file distributed 
with
+               this work for additional information regarding copyright 
ownership.
+               The ASF licenses this file to you under the Apache License, 
Version
+               2.0 (the "License"); you may not use this file except in 
compliance
+               with the License. You may obtain a copy of the License at
+
+               http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+               applicable law or agreed to in writing, software distributed 
under the
+               License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES 
OR
+               CONDITIONS OF ANY KIND, either express or implied. See the 
License for
+               the specific language governing permissions and limitations 
under the
+               License.
+       -->
 <beans xmlns="http://www.springframework.org/schema/beans";
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-       xmlns:jaxws="http://cxf.apache.org/jaxws";
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns:jaxws="http://cxf.apache.org/jaxws";
        xsi:schemaLocation="
 http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
 http://cxf.apache.org/jaxws
 http://cxf.apache.org/schemas/jaxws.xsd";>
 
-    <jaxws:endpoint id="server"
-    implementor="demo.hw.server.GreeterImpl"    
-    address="http://localhost:9000/SoapContext/SoapPort";
-    wsdlLocation="wsdl/hello_world.wsdl"/>
-         
+       <jaxws:endpoint id="complex-server" 
implementor="org.apache.cxf.demo.complex.ComplexImpl"
+               address="http://localhost:9000/Complex"; 
wsdlLocation="wsdl/complex.wsdl" />
 </beans>
-<!-- END SNIPPET: beans -->
+       

Added: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java?rev=733901&view=auto
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
 (added)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
 Mon Jan 12 13:22:28 2009
@@ -0,0 +1,47 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.demo.complex;
+
+import 
agentwsresponse.agent.legacysystemservices.schemas.hitum.esb.company.AgentWSResponse;
+
+import 
com.company.application.CompanyESBApplicationBiztalkAgentDetails4405AgentDetailsPrtSoap;
+import com.company.application.GetAgentDetails;
+import com.company.application.GetAgentDetailsResponse;
+
+/**
+ * This is a trivial implementation of a service contributed in a bug report.  
It's useful
+ * as an example of a hard case of using dynamic client.
+ */
+public class ComplexImpl implements 
CompanyESBApplicationBiztalkAgentDetails4405AgentDetailsPrtSoap {
+
+    /** {...@inheritdoc}*/
+    public GetAgentDetailsResponse getAgentDetails(GetAgentDetails parameters) 
{
+        GetAgentDetailsResponse r = new GetAgentDetailsResponse();
+        AgentWSResponse awr = new AgentWSResponse();
+        
+        int number = parameters.getPart().getAgentNumber();
+        awr.setAgenceNumber(number);
+        awr.setAgentName("Orange");
+        
+        r.setAgentWSResponse(awr);
+        return r;
+    }
+
+}

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/src/org/apache/cxf/demo/complex/ComplexImpl.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl?rev=733901&view=auto
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
 (added)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
 Mon Jan 12 13:22:28 2009
@@ -0,0 +1,183 @@
+<?xml version="1.0" encoding="windows-1255"?>
+       <!--
+               Licensed to the Apache Software Foundation (ASF) under one or 
more
+               contributor license agreements. See the NOTICE file distributed 
with
+               this work for additional information regarding copyright 
ownership.
+               The ASF licenses this file to you under the Apache License, 
Version
+               2.0 (the "License"); you may not use this file except in 
compliance
+               with the License. You may obtain a copy of the License at
+
+               http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+               applicable law or agreed to in writing, software distributed 
under the
+               License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES 
OR
+               CONDITIONS OF ANY KIND, either express or implied. See the 
License for
+               the specific language governing permissions and limitations 
under the
+               License.
+       -->
+<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
+       xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"; 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
+       xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; 
xmlns:tns="http://Company.com/Application";
+       
xmlns:s1="http://Company.ESB.Hitum.Schemas.LegacySystemServices.Agent.AgentWSResponse";
+       xmlns:s="http://www.w3.org/2001/XMLSchema"; 
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/";
+       xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; 
targetNamespace="http://Company.com/Application";
+       xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";>
+       <wsdl:documentation 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";>BizTalk
+               assembly "Company.ESB.Application.Biztalk, Version=1.0.0.0,
+               Culture=neutral, PublicKeyToken=3b97ca913d728b36" published web
+               service.</wsdl:documentation>
+       <wsdl:types>
+               <s:schema elementFormDefault="qualified" 
targetNamespace="http://Company.com/Application";>
+                       <s:import
+                               
namespace="http://Company.ESB.Hitum.Schemas.LegacySystemServices.Agent.AgentWSResponse";
 />
+                       <s:element name="GetAgentDetails">
+                               <s:complexType>
+                                       <s:sequence>
+                                               <s:element minOccurs="0" 
maxOccurs="1" name="part"
+                                                       
type="tns:AgentWSRequest" />
+                                       </s:sequence>
+                               </s:complexType>
+                       </s:element>
+                       <s:complexType name="AgentWSRequest">
+                               <s:sequence>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="AgentNumber" type="s:int" 
/>
+                               </s:sequence>
+                       </s:complexType>
+                       <s:element name="GetAgentDetailsResponse">
+                               <s:complexType>
+                                       <s:sequence>
+                                               <s:element minOccurs="0" 
maxOccurs="1" ref="s1:AgentWSResponse" />
+                                       </s:sequence>
+                               </s:complexType>
+                       </s:element>
+               </s:schema>
+               <s:schema elementFormDefault="qualified"
+                       
targetNamespace="http://Company.ESB.Hitum.Schemas.LegacySystemServices.Agent.AgentWSResponse";>
+                       <s:element name="AgentWSResponse" 
type="s1:AgentWSResponse" />
+                       <s:complexType name="AgentWSResponse">
+                               <s:sequence>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="ResponseCode" 
type="s:short" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="ResponseDescription" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="AgentName" 
type="s:string" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="CancelledDate" 
type="s:date" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="Street" type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="HouseNumber" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="City" type="s:string" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="ZipCode" type="s:int" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="AreaCode" type="s:short" 
/>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="PhoneNumber" type="s:int" 
/>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="AreaCode2" type="s:short" 
/>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="PhoneNumber2" 
type="s:int" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="InspectorNumber" 
type="s:short" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="SuperInspectorNumber" 
type="s:short" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="StaffNumber" 
type="s:short" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="AgenceNumber" 
type="s:int" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="StaffName" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="EmployeeNumber" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="ProductionConfirmCode" 
type="s:string" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="AddProductionLifePolicy" 
type="s:short" />
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               
name="AddProductionHealthPolicy" type="s:short" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="AddLoginEmployee1" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="AddLoginEmployee2" 
type="s:string" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="Result" 
type="s1:AgentWSResponseResult" />
+                               </s:sequence>
+                       </s:complexType>
+                       <s:complexType name="AgentWSResponseResult">
+                               <s:sequence>
+                                       <s:element minOccurs="1" maxOccurs="1" 
form="unqualified"
+                                               name="Code" type="s:int" />
+                                       <s:element minOccurs="0" maxOccurs="1" 
form="unqualified"
+                                               name="Description" 
type="s:string" />
+                               </s:sequence>
+                       </s:complexType>
+               </s:schema>
+       </wsdl:types>
+       <wsdl:message name="GetAgentDetailsSoapIn">
+               <wsdl:part name="parameters" element="tns:GetAgentDetails" />
+       </wsdl:message>
+       <wsdl:message name="GetAgentDetailsSoapOut">
+               <wsdl:part name="parameters" 
element="tns:GetAgentDetailsResponse" />
+       </wsdl:message>
+       <wsdl:portType
+               
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap">
+               <wsdl:operation name="GetAgentDetails">
+                       <wsdl:input message="tns:GetAgentDetailsSoapIn" />
+                       <wsdl:output message="tns:GetAgentDetailsSoapOut" />
+               </wsdl:operation>
+       </wsdl:portType>
+       <wsdl:binding
+               
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap"
+               
type="tns:Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap">
+               <soap:binding transport="http://schemas.xmlsoap.org/soap/http"; 
/>
+               <wsdl:operation name="GetAgentDetails">
+                       <soap:operation
+                               
soapAction="http://Company.com/Application/Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_Prt/GetAgentDetails";
+                               style="document" />
+                       <wsdl:input>
+                               <soap:body use="literal" />
+                       </wsdl:input>
+                       <wsdl:output>
+                               <soap:body use="literal" />
+                       </wsdl:output>
+               </wsdl:operation>
+       </wsdl:binding>
+       <wsdl:binding
+               
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap12"
+               
type="tns:Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap">
+               <soap12:binding 
transport="http://schemas.xmlsoap.org/soap/http"; />
+               <wsdl:operation name="GetAgentDetails">
+                       <soap12:operation
+                               
soapAction="http://Company.com/Application/Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_Prt/GetAgentDetails";
+                               style="document" />
+                       <wsdl:input>
+                               <soap12:body use="literal" />
+                       </wsdl:input>
+                       <wsdl:output>
+                               <soap12:body use="literal" />
+                       </wsdl:output>
+               </wsdl:operation>
+       </wsdl:binding>
+       <wsdl:service
+               
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_Prt">
+               <wsdl:documentation 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";>BizTalk
+                       assembly "Company.ESB.Application.Biztalk, 
Version=1.0.0.0,
+                       Culture=neutral, PublicKeyToken=3b97ca913d728b36" 
published web
+                       service.</wsdl:documentation>
+               <wsdl:port
+                       
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap"
+                       
binding="tns:Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap">
+                       <soap:address
+                               
location="http://BiztalkServer/Application.Biztalk.Proxy/Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_Prt.asmx";
 />
+               </wsdl:port>
+               <wsdl:port
+                       
name="Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap12"
+                       
binding="tns:Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_PrtSoap12">
+                       <soap12:address
+                               
location="http://BiztalkServer/Application.Biztalk.Proxy/Company_ESB_Application_Biztalk_AgentDetails_4405_AgentDetails_Prt.asmx";
 />
+               </wsdl:port>
+       </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/complex.wsdl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/cxf-servlet.xml
URL: 
http://svn.apache.org/viewvc/cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/cxf-servlet.xml?rev=733901&r1=733872&r2=733901&view=diff
==============================================================================
--- 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/cxf-servlet.xml
 (original)
+++ 
cxf/trunk/distribution/src/main/release/samples/wsdl_first_dynamic_client/wsdl/cxf-servlet.xml
 Mon Jan 12 13:22:28 2009
@@ -31,8 +31,5 @@
         implementor="demo.hw.server.GreeterImpl"
         wsdlLocation="WEB-INF/wsdl/hello_world.wsdl"
         address="/hello_world">
-                <jaxws:features>
-                   <bean class="org.apache.cxf.feature.LoggingFeature"/>
-                </jaxws:features>
     </jaxws:endpoint>
 </beans>


Reply via email to