You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by pe...@martindale.com on 2005/12/01 00:58:10 UTC

WSDL2Java mis- interpreting complexType in wsdd

Hi,
 
I'm using Axis 1.2  WSDL2Java with Ant.  I have xsd which contains several
complexTypes.  The wsdl seems to behave properly and I receive a generation
of java source, but the wsdd mutates.  I've included parts of the files
which I believe are issuing problems.  Anyone have experience with this?  I
thought 1.2 was rid of the bracket problems...help!
 
I apologize for the amount and the order(it's in several files) of the text,
but I'm hoping it's thorough enough for someone to look at it, and say,
"Yeah I've been through this..."
 
Ant task:
 
    <property name="src.dir" location="${cdrive}/source"/>
    <property name="wsdl.dir" location="${cdrive}/wsdl"/>
 
    <target name="server" depends="setup">
        <wsdl2java url="${wsdl.dir}/myMainwsdl.wsdl"
            output="${src.dir}" 
            verbose="yes" serverSide="yes"
            skeletonDeploy="yes"
            wrapArrays="yes"
            debug="yes">
         </wsdl2java>
         <echo message="Server wsdl2java completed"/>
    </target>
 
I'm trying to get type="wrapped" from my xml
 
Here's the operation binding
 
<operation name="retrieveStuff">

<soapbind:operation soapAction="" style="document"/>

<input name="getStuffInput">

<soapbind:body use="literal"/>

</input>

<output name="getStuffOutput">

<soapbind:body use="literal"/>

</output>


<fault name="internalServiceFault">

<soapbind:fault name="internalServiceFault" use="literal"/>

</fault>

<fault name="authenticationFault">

<soapbind:fault name="authenticationFault" use="literal"/>

</fault>

<fault name="noDataFoundFault">

<soapbind:fault name="noDataFoundFault" use="literal"/>

</fault>

<fault name="wrongSearchCriteriaFault">

<soapbind:fault name="wrongSearchCriteriaFault" use="literal"/>

</fault>

<fault name="tooManyResultsFault">

<soapbind:fault name="tooManyResultsFault" use="literal"/>

</fault>

</operation>

 
 
 
Here's the port:
 
<message name="RetrieveStuffInputMsg">

<part name="parameters" element="param:retrieveStuff"/>

</message>

<message name="RetrieveStuffOutputMsg">

<part name="result" element="param:retrieveStuffResponse"/>

</message>

 
<portType name="MYWebServicesPort">

<operation name="retrieveStuff" parameterOrder="parameters">

<input name="getStuffInput" message="port:RetrieveStuffInputMsg"/>

<output name="getStuffOutput" message="port:RetrieveStuffOutputMsg"/>

</operation>

</portType>

 

Here's the schema:

 

<complexType name="StuffRequest">

<sequence>

<element name="stuffName" type="xsd:string"/>

<element name="admissionData">

<complexType>

<sequence>

<element name="YearAdmitted" type="xsd:gYear"/>

<element name="StateAdmitted" type="xsd:string"/>

</sequence>

</complexType>

</element>

<element name="SchoolData">

<complexType>

<sequence>

<element name="schoolYear" type="xsd:gYear"/>

<element name="schoolName" type="xsd:string"/>

</sequence>

</complexType>

</element>

<element name="retrieveStuff" type="param:StuffRequest"/>

 

Here's part of the wsdd

<!--header-->

<service name="port" provider="java:RPC" style="wrapped" use="literal">

<parameter name="wsdlTargetNamespace" value="http://service.ws.com"/>

<parameter name="wsdlServiceElement" value="MYWebServices"/>

<parameter name="schemaUnqualified"
value="http://params.api.ws.com,http://faults.api.ws.com"/>

<parameter name="wsdlServicePort" value="port"/>

<parameter name="className"
value="com.ws.service.MYWebServicesPortSoapSkeleton"/>

<parameter name="wsdlPortType" value="MYWebServicesPort"/>

<parameter name="typeMappingVersion" value="1.2"/>

<parameter name="allowedMethods" value="*"/>

 

<typeMapping

xmlns:ns=http://params.api. <http://params.api.ws.com> ws.com

<!--The following qname is the mutated statement...The ">" shouldn't be
present in the qname-->

qname="ns:>StuffRequest>stuffSchoolData"

type="java:com.martindale.mhws.v1.api.params.AttorneyRequestAttorneySchoolDa
ta"

serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"

deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"

encodingStyle=""

/>

<!-- That's it.  Sorry for the amount of text, but I'm hoping someone has
seen this before and has an idea or 2....Thanks and God Bless -->
Peter A