I'm using Axis 1.3 final and have a WSDL (doc/lit) provided by a 3rd
party I need to use. The operation returns a ProfileList:
<element name="ProfileList">
<complexType>
<sequence>
<element
name="profile" type="impl:Profile" minOccurs="0" maxOccurs="unbounded"
/>
</sequence>
</complexType>
</element>
....
<wsdl:message name="replyProfiles">
<wsdl:part element="impl:ProfileList" name="part"/>
</wsdl:message>
....
I run WSDL2Java, deploy and get the Axis WSDL from the ?WSDL url. It appears that Axis has renamed my elements:
<element name="ProfileList">
<complexType>
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="item" type="impl:Profile"/>
</sequence>
</complexType>
</element>
Why did Axis rename my element? I've tried using different names
just in case it thought there was a name collision, but it always
renames it to 'item'. If I add a second element into the
sequence, the renaming does not occur. Unfortunately, I don't
have much flexibility on the WSDL...
here's how I'm invoking wsdl2java:
<axis-wsdl2java output="${gensrc}" testcase="true" verbose="true"
serverside="true" skeletondeploy="true"
url="">
<mapping namespace="http://mediaservice.customer.com"
package="com.foo.bar.stub"/>
</axis-wsdl2java>
Everything looks correct in the generated code and it does work properly when using axis client and axis server.
