You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by na...@apache.org on 2008/08/26 00:56:49 UTC

svn commit: r688914 - in /webservices/axis/trunk/c: src/wsdl/org/apache/axis/wsdl/wsdl2ws/ src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ tests/auto_build/t...

Author: nadiramra
Date: Mon Aug 25 15:56:48 2008
New Revision: 688914

URL: http://svn.apache.org/viewvc?rev=688914&view=rev
Log:
AXISCPP-458 - unwrapped support when no input parameters. Additional test cases.

Added:
    webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/NoInputParamsUnwrappedClient.cpp
    webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/OneWayOperationUnwrappedClient.cpp
    webservices/axis/trunk/c/tests/auto_build/testcases/tests/NoInputParamsUnwrapped.xml
    webservices/axis/trunk/c/tests/auto_build/testcases/tests/OneWayOperationUnwrapped.xml
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/NoInputParamsUnwrapped.wsdl
    webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/OneWayOperationUnwrapped.wsdl
Modified:
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ClientStubWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java
    webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java?rev=688914&r1=688913&r2=688914&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java Mon Aug 25 15:56:48 2008
@@ -681,10 +681,11 @@
 
         // For wrapped style, inner attributes and elements are added as parameters.
         // For unwrapped style, objects are used for the parameters (i.e. classes or structures).
+        Iterator elementNames = type.getElementnames();
+        Iterator attributes   = type.getAttributes();
         if (!minfo.isUnwrapped())
         {
             // Add input elements to method info
-            Iterator elementNames = type.getElementnames();
             while (elementNames.hasNext())
             {
                 String elementname = (String) elementNames.next();
@@ -713,8 +714,7 @@
                 minfo.addInputParameter(pinfo);
             }
             
-            // add input attributes to method info
-            Iterator attributes = type.getAttributes();
+            // add input attributes to method info - TODO probably can remove this chunk of code.
             if (attributes != null)
             {
                 while (attributes.hasNext())
@@ -734,27 +734,32 @@
         }
         else
         { 
-            String elementName;
-            
-            if (element != null)
-                elementName = element.getQName().getLocalPart();
-            else
-                elementName = type.getName().getLocalPart();
-            
-            ParameterInfo pinfo = new ParameterInfo();
-            
-            pinfo.setType(type);
-            type.setIsUnwrappedInputType(true);
-            pinfo.setParamName(elementName, c_typeMap);
-            pinfo.setElementName(type.getName());
-            if (type.getName().equals(CUtils.anyTypeQname))
-                pinfo.setAnyType(true);
-
-            // Let us be nice and uppercase the first character in type name, 
-            // in addition to resolving method name/type conflicts.
-            type.setLanguageSpecificName(generateNewTypeName(type, minfo));
-            
-            minfo.addInputParameter(pinfo);
+            // If input element does not contain any sub-elements or attributes, we ignore.
+            if (elementNames.hasNext() 
+                    || (attributes != null && attributes.hasNext()))
+            {
+                String elementName;
+                
+                if (element != null)
+                    elementName = element.getQName().getLocalPart();
+                else
+                    elementName = type.getName().getLocalPart();
+                
+                ParameterInfo pinfo = new ParameterInfo();
+                
+                pinfo.setType(type);
+                type.setIsUnwrappedInputType(true);
+                pinfo.setParamName(elementName, c_typeMap);
+                pinfo.setElementName(type.getName());
+                if (type.getName().equals(CUtils.anyTypeQname))
+                    pinfo.setAnyType(true);
+    
+                // Let us be nice and uppercase the first character in type name, 
+                // in addition to resolving method name/type conflicts.
+                type.setLanguageSpecificName(generateNewTypeName(type, minfo));
+                
+                minfo.addInputParameter(pinfo);
+            }
         }
     }
 

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ClientStubWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ClientStubWriter.java?rev=688914&r1=688913&r2=688914&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ClientStubWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ClientStubWriter.java Mon Aug 25 15:56:48 2008
@@ -364,20 +364,28 @@
         
         if (namespaceURI == null)
             namespaceURI = "";
-             
-        if (minfo.isUnwrapped())
+
+        // Need to give indication to serializer whether wrapped or unwrapped style is being done.
+        // Note that the only time we override this if there are no input parameters.
+        if (minfo.isUnwrapped() && paramsB.size () > 0)
             c_writer.write("\taxiscCallSetOperationUnwrapped(call, \"");
         else
             c_writer.write("\taxiscCallSetOperation(call, \"");
         c_writer.write( minfo.getMethodname() + "\", \""
             + namespaceURI + "\");\n");
         
-        // new calls from stub base
+        //=============================================================================
+        // Apply user specified properties
+        //=============================================================================        
+
         CUtils.printBlockComment(c_writer, "Apply SSL configuration properties and user-set SOAP headers.");        
         c_writer.write ("\taxiscStubIncludeSecure(stub);\n");  
         c_writer.write ("\taxiscStubApplyUserPreferences(stub);\n");
-        
+
+        //=============================================================================
         // Process elements
+        //=============================================================================        
+        
         boolean commentIssued=false;
         String tab2;
         for (int i = 0; i < paramsB.size(); i++)

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java?rev=688914&r1=688913&r2=688914&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java Mon Aug 25 15:56:48 2008
@@ -140,6 +140,7 @@
                 CUtils.printMethodComment(c_writer, "Setter method for class member field " 
                         + parameterName + ".");
                 
+                // TODO setter leaks memory if setting complex type!
                 if (attribs[i].isArray())
                 {   
                     c_writer.write("void " + c_classname + "::\nset"

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java?rev=688914&r1=688913&r2=688914&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java Mon Aug 25 15:56:48 2008
@@ -366,8 +366,10 @@
         if (namespaceURI == null)
             namespaceURI = "";
 
+        // Need to give indication to serializer whether wrapped or unwrapped style is being done.
+        // Note that the only time we override this if there are no input parameters.
         String iswrapperstyle = "true";
-        if (minfo.isUnwrapped())
+        if (minfo.isUnwrapped() && paramsB.size () > 0)
             iswrapperstyle = "false";
         
          c_writer.write( "\t\tm_pCall->setOperation(\""

Added: webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/NoInputParamsUnwrappedClient.cpp
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/NoInputParamsUnwrappedClient.cpp?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/NoInputParamsUnwrappedClient.cpp (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/NoInputParamsUnwrappedClient.cpp Mon Aug 25 15:56:48 2008
@@ -0,0 +1,72 @@
+// Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+// 
+// Licensed 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.
+
+#include <iostream>
+#include "NoInputParamsServicePortType.hpp"
+
+int main( int argc, char * argv[])
+{
+    const char *    pszURL = "http://localhost:9090/axis/services/NoInputParamsService";
+    GetVersionResponse * result = NULL;
+    
+    if (argc > 1)
+        pszURL = argv[1];
+     
+    NoInputParamsServicePortType pWS( pszURL, APTHTTP1_1);
+        
+    try
+    {
+    	result = pWS.getVersion(); 
+    	
+    	if (result && result->_return)
+          cout << "Result: " << result->_return << endl;
+    	else
+          cout << "FAILED-null result" << endl;
+    	
+    	delete result;
+    }
+    catch( SoapFaultException& e)
+    {
+        char *faultCode   = (char *)e.getFaultCode();
+        char *faultString = (char *)e.getFaultString();
+        char *faultActor  = (char *)e.getFaultActor();
+        
+        if (!faultCode)  faultCode = "NULL";
+        if (!faultString) faultString = "NULL";
+        if (!faultActor) faultActor = "NULL";
+        
+        cout << "  FaultCode = " << faultCode << endl;
+        cout << "  FaultString = " << faultString << endl;
+        cout << "  FaultActor = " << faultActor << endl;
+        cout << "  SoapFaultException: " << e.what() << endl;
+    }    
+    catch( AxisException& e)
+    {
+        cout <<  e.what() << endl;
+    }
+    catch( exception& e)
+    {
+        cout << "Unknown exception has occured : " << e.what() << endl;
+    }
+    catch(...)
+    {
+        cout << "Unknown exception has occured" << endl;
+    }
+
+
+    cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
+
+    return 0;
+}
\ No newline at end of file

Added: webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/OneWayOperationUnwrappedClient.cpp
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/OneWayOperationUnwrappedClient.cpp?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/OneWayOperationUnwrappedClient.cpp (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/OneWayOperationUnwrappedClient.cpp Mon Aug 25 15:56:48 2008
@@ -0,0 +1,128 @@
+// Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+// 
+// Licensed 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.
+
+#include <iostream>
+#include "TestServicePortType.hpp"
+
+int main( int argc, char * argv[])
+{
+    const char *    pszURL = "http://localhost:9090/OneWayOperation/services/OneWayOperationImpl";
+    
+    if (argc > 1)
+        pszURL = argv[1];
+     
+    TestServicePortType pWS( pszURL, APTHTTP1_1);
+    SampleBeanBoolean pSBB;
+    SampleBeanComplex pSBC; 
+    
+	ABeanPortTypeComplexInput inputComplex;
+	ABeanPortTypeBaseInput    inputBase;
+        
+    try
+    {
+
+    	
+        SampleBeanComplex_Array BBArrayIn;
+        SampleBeanComplex ** BBArray = NULL;                    
+        BBArrayIn.set(BBArray,0);
+        pSBB.setSampleBean(&BBArrayIn);
+        pSBB.setSampleBeanBoolean(false_);
+        
+        inputBase.setElement(new SampleBeanBoolean(pSBB));
+        pWS.aBeanPortTypeBase( &inputBase );  
+        cout << "Called aBeanPortTypeBase()" << endl;
+
+        SampleBeanComplex_Array BCArrayIn;
+        SampleBeanComplex ** BCArray = NULL;                    
+        BCArrayIn.set(BCArray,0);
+        
+        pSBC.setSampleBeanComplex(&BCArrayIn);
+        pSBC.setBoolean(false_);
+        
+        inputComplex.setElement(new SampleBeanComplex(pSBC));
+        pWS.aBeanPortTypeComplex( &inputComplex);
+        cout << "Called aBeanPortTypeComplex()" << endl;
+
+        cout << "Calling aBeanPortTypeComplex() to initiate fault processing" << endl;
+        pWS.aBeanPortTypeComplex( &inputComplex);
+        
+        cout << "Calling aBeanPortTypeComplex() to see everything OK after fault processing" << endl;
+        pWS.aBeanPortTypeComplex( &inputComplex);
+    }
+    catch( SoapFaultException& e)
+    {
+        char *faultCode   = (char *)e.getFaultCode();
+        char *faultString = (char *)e.getFaultString();
+        char *faultActor  = (char *)e.getFaultActor();
+        
+        if (!faultCode)  faultCode = "NULL";
+        if (!faultString) faultString = "NULL";
+        if (!faultActor) faultActor = "NULL";
+        
+        cout << "  FaultCode = " << faultCode << endl;
+        cout << "  FaultString = " << faultString << endl;
+        cout << "  FaultActor = " << faultActor << endl;
+        cout << "  SoapFaultException: " << e.what() << endl;
+    }    
+    catch( AxisException& e)
+    {
+        cout <<  e.what() << endl;
+    }
+    catch( exception& e)
+    {
+        cout << "Unknown exception has occured : " << e.what() << endl;
+    }
+    catch(...)
+    {
+        cout << "Unknown exception has occured" << endl;
+    }
+
+    try
+    {
+        cout << "Calling aBeanPortTypeComplex() to see everything OK after fault processing" << endl;
+        pWS.aBeanPortTypeComplex( &inputComplex);
+    }
+    catch( SoapFaultException& e)
+    {
+        char *faultCode   = (char *)e.getFaultCode();
+        char *faultString = (char *)e.getFaultString();
+        char *faultActor  = (char *)e.getFaultActor();
+        
+        if (!faultCode)  faultCode = "NULL";
+        if (!faultString) faultString = "NULL";
+        if (!faultActor) faultActor = "NULL";
+        
+        cout << "  FaultCode = " << faultCode << endl;
+        cout << "  FaultString = " << faultString << endl;
+        cout << "  FaultActor = " << faultActor << endl;
+        cout << "  SoapFaultException: " << e.what() << endl;
+    }    
+    catch( AxisException& e)
+    {
+        cout <<  e.what() << endl;
+    }
+    catch( exception& e)
+    {
+        cout << "Unknown exception has occured : " << e.what() << endl;
+    }
+    catch(...)
+    {
+        cout << "Unknown exception has occured" << endl;
+    }
+
+    cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
+
+    return 0;
+}
\ No newline at end of file

Added: webservices/axis/trunk/c/tests/auto_build/testcases/tests/NoInputParamsUnwrapped.xml
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/tests/NoInputParamsUnwrapped.xml?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/tests/NoInputParamsUnwrapped.xml (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/tests/NoInputParamsUnwrapped.xml Mon Aug 25 15:56:48 2008
@@ -0,0 +1,16 @@
+<test>
+    <name>NoInputParamsUnwrapped</name>
+    <description>NoInputParamsUnwrapped</description>
+    <clientLang>cpp</clientLang>
+    <clientCode>NoInputParamsUnwrappedClient.cpp</clientCode>
+    <wsdl>NoInputParamsUnwrapped.wsdl</wsdl>
+    <expected>
+        <serverResponse>
+            NoInputParams_ServerResponse.expected
+        </serverResponse>
+        <output>
+            NoInputParams.cpp.out
+        </output>
+    </expected>
+	<endpoint>http://localhost:80/axis/NoInputParamsUnwrapped</endpoint>
+</test>

Added: webservices/axis/trunk/c/tests/auto_build/testcases/tests/OneWayOperationUnwrapped.xml
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/tests/OneWayOperationUnwrapped.xml?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/tests/OneWayOperationUnwrapped.xml (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/tests/OneWayOperationUnwrapped.xml Mon Aug 25 15:56:48 2008
@@ -0,0 +1,16 @@
+<test>
+    <name>OneWayOperationUnwrapped</name>
+    <description>OneWayOperationUnwrapped</description>
+    <clientLang>cpp</clientLang>
+    <clientCode>OneWayOperationUnwrappedClient.cpp</clientCode>
+    <wsdl>OneWayOperationUnwrapped.wsdl</wsdl>
+    <expected>
+        <serverResponse>
+            OneWayOperation_ServerResponse.expected
+        </serverResponse>
+        <output>
+            OneWayOperation.cpp.out
+        </output>
+    </expected>
+	<endpoint>http://localhost:80/axis/OneWayOperationUnwrapped</endpoint>
+</test>

Modified: webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/unitTest.list?rev=688914&r1=688913&r2=688914&view=diff
==============================================================================
Binary files - no diff available.

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/NoInputParamsUnwrapped.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/NoInputParamsUnwrapped.wsdl?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/NoInputParamsUnwrapped.wsdl (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/NoInputParamsUnwrapped.wsdl Mon Aug 25 15:56:48 2008
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<wsdl:definitions  
+	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"  
+	xmlns:axis2="http://webservice.example.apache.org" 
+	xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" 
+	xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+	xmlns:ns1="http://org.apache.axis2/xsd" 
+	xmlns:ns0="http://webservice.example.apache.org/xsd" 
+	targetNamespace="http://webservice.example.apache.org" 
+	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+  <wsdl:types>
+    <xs:schema 
+		xmlns:ns="http://webservice.example.apache.org/xsd" 
+		attributeFormDefault="qualified" 
+		elementFormDefault="qualified" 
+		targetNamespace="http://webservice.example.apache.org/xsd">
+      <xs:element name="getVersionResponse">
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="return" nillable="true" type="xs:string" />
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      
+      <xs:element name="getVersionInput">
+        <xs:complexType>
+          <xs:sequence>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:schema>
+  </wsdl:types>
+  <wsdl:message name="getVersionMessage">
+      <wsdl:part name="part1" element="ns0:getVersionInput" />
+  </wsdl:message>
+  
+  <wsdl:message name="getVersionResponse">
+    <wsdl:part name="part1" element="ns0:getVersionResponse" />
+  </wsdl:message>
+  <wsdl:portType name="NoInputParamsServicePortType">
+    <wsdl:operation name="getVersion">
+      <wsdl:input wsaw:Action="urn:getVersion" message="axis2:getVersionMessage" />
+      <wsdl:output wsaw:Action="http://webservice.example.apache.org /NoInputParamsServicePortType/getVersionResponse" message="axis2:getVersionResponse" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:binding name="NoInputParamsServiceSOAP11Binding" type="axis2:NoInputParamsServicePortType">
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="getVersion">
+      <soap:operation soapAction="urn:getVersion" style="document" />
+      <wsdl:input>
+        <soap:body use="literal" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="NoInputParamsService">
+    <wsdl:port name="NoInputParamsServiceSOAP11port_http" binding="axis2:NoInputParamsServiceSOAP11Binding">
+      <soap:address location="http://localhost/axis/NoInputParamsService" />
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file

Added: webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/OneWayOperationUnwrapped.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/OneWayOperationUnwrapped.wsdl?rev=688914&view=auto
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/OneWayOperationUnwrapped.wsdl (added)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/wsdls/OneWayOperationUnwrapped.wsdl Mon Aug 25 15:56:48 2008
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2003-2004 The Apache Software Foundation.                      -->
+<!-- (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved                   -->
+<!--                                                                          -->
+<!-- Licensed 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.                                           -->
+
+<definitions targetNamespace="OneWayOperationTest"
+                       xmlns="http://schemas.xmlsoap.org/wsdl/"
+                  xmlns:ns99="OneWayOperation"
+                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+                   xmlns:tns="OneWayOperationTest"
+                   xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="XMLSchema">
+
+ <types>
+  <xsd:schema   xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  	<xsd:import namespace="OneWayOperation"
+  	       schemaLocation="OneWayOperation.xsd"/>
+
+   <xsd:element name="aBeanPortTypeComplexInput">
+    <xsd:complexType>
+     <xsd:sequence>
+      <xsd:element maxOccurs="1" minOccurs="1" name="Element" nillable="true" type="ns99:SampleBeanComplex"/>
+     </xsd:sequence>
+    </xsd:complexType>
+   </xsd:element>
+
+   <xsd:element name="aBeanPortTypeBaseInput">
+    <xsd:complexType>
+     <xsd:sequence>
+      <xsd:element maxOccurs="1" minOccurs="1" name="Element" nillable="true" type="ns99:SampleBeanBoolean"/>
+     </xsd:sequence>
+    </xsd:complexType>
+   </xsd:element>
+  </xsd:schema>
+ </types>
+
+ <message name="aBeanMessageComplex">
+ 	<part name="aBeanMesage" element="tns:aBeanPortTypeComplexInput"></part>
+ </message>
+
+ <message name="aBeanMessageBase">
+ 	<part name="aBeanMesage" element="tns:aBeanPortTypeBaseInput"></part>
+ </message>
+
+ <portType name="TestServicePortType">
+  <operation name="aBeanPortTypeComplex">
+   <input message="tns:aBeanMessageComplex"/>
+  </operation>
+
+  <operation name="aBeanPortTypeBase">
+   <input message="tns:aBeanMessageBase"/>
+  </operation>
+ </portType>
+
+ <binding name="ServiceBinding" type="tns:TestServicePortType">
+  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+  <operation name="aBeanPortTypeComplex">
+   <soap:operation soapAction="" style="document"/>
+   <input>
+    <soap:body use="literal"/>
+   </input>
+  </operation>
+
+  <operation name="aBeanPortTypeBase">
+   <soap:operation soapAction="" style="document"/>
+   <input>
+    <soap:body use="literal"/>
+   </input>
+  </operation>
+ </binding>
+
+  <service name="SimpleService">
+    <port binding="tns:ServiceBinding" name="ServiceBinding">
+      <soap:address location="http://tempuri.org" /> 
+    </port>
+  </service>
+</definitions>
\ No newline at end of file