Could you provide us with a sample of your errant SOAP messages?
Is the fault occuring on the client, server, or both?

Anne

(ps -- the WSDL looks just fine)
(I recommend that you compile your code with debug on so that
java2wsdl produces more reasonable parameter names.)

On 6/4/05, Nathaniel A. Johnson <[EMAIL PROTECTED]> wrote:
> hi all,
> 
> i have a java application and need to make it available via web
> services... so i'd like to use java2wsdl.  it works great if i use
> rpc/encoded (i even have it working with wss4j, signing and encrypting
> all communications), but doc/literal doesnt seem to play nicely.  the
> java interface only uses simple String objects and String arrays, so its
> a really simple interface (no complex objects or anything).  i get the
> following fault when a String array return type is processed.
> 
> AxisFault
>  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
>  faultSubcode:
>  faultString: org.xml.sax.SAXException: SimpleDeserializer encountered a
> child element, which is NOT expected, in something it was trying to
> deserialize.
> 
> i use the java2wsdl ant task, if that helps anyone think of any
> advice... here is the wsdl that it generates, but i really dont want to
> have to modify it by hand after each change to the java objects... but
> if thats what it comes down to so that it will work with other clients,
> i guess thats what i will have to do.
> 
> thanks all!  heres the wsdl (sorry about the +/- signs... copied it from
> internet explorer)
> 
> nate
> 
> 
> <?xml version="1.0" encoding="UTF-8" ?>
> - <wsdl:definitions
> targetNamespace="http://services.osg.uis.iu.edu/GroupsService";
> xmlns:apachesoap="http://xml.apache.org/xml-soap";
> xmlns:impl="http://services.osg.uis.iu.edu/GroupsService";
> xmlns:intf="http://services.osg.uis.iu.edu/GroupsService";
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
> xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
> - <!--
> WSDL created by Apache Axis version: 1.2.1
> Built on Jun 03, 2005 (06:10:52 PDT)
> 
>   -->
> - <wsdl:types>
> - <schema elementFormDefault="qualified"
> targetNamespace="http://services.osg.uis.iu.edu/GroupsService";
> xmlns="http://www.w3.org/2001/XMLSchema";>
> - <element name="createGroup">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="createGroupResponse">
> - <complexType>
> - <sequence>
>   <element name="createGroupReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="getMembers">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="getMembersResponse">
> - <complexType>
> - <sequence>
>   <element maxOccurs="unbounded" name="getMembersReturn"
> type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="createGroupWithMembers">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   <element maxOccurs="unbounded" name="in1" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="createGroupWithMembersResponse">
> - <complexType>
> - <sequence>
>   <element name="createGroupWithMembersReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="addMember">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   <element name="in1" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="addMemberResponse">
> - <complexType>
> - <sequence>
>   <element name="addMemberReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="addMembers">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   <element maxOccurs="unbounded" name="in1" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="addMembersResponse">
> - <complexType>
> - <sequence>
>   <element name="addMembersReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeMember">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   <element name="in1" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeMemberResponse">
> - <complexType>
> - <sequence>
>   <element name="removeMemberReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeMembers">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   <element maxOccurs="unbounded" name="in1" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeMembersResponse">
> - <complexType>
> - <sequence>
>   <element name="removeMembersReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeGroup">
> - <complexType>
> - <sequence>
>   <element name="in0" type="xsd:string" />
>   </sequence>
>   </complexType>
>   </element>
> - <element name="removeGroupResponse">
> - <complexType>
> - <sequence>
>   <element name="removeGroupReturn" type="xsd:int" />
>   </sequence>
>   </complexType>
>   </element>
>   </schema>
>   </wsdl:types>
> - <wsdl:message name="createGroupWithMembersResponse">
>   <wsdl:part element="impl:createGroupWithMembersResponse"
> name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="createGroupWithMembersRequest">
>   <wsdl:part element="impl:createGroupWithMembers" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeMembersResponse">
>   <wsdl:part element="impl:removeMembersResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeMemberRequest">
>   <wsdl:part element="impl:removeMember" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeMemberResponse">
>   <wsdl:part element="impl:removeMemberResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="getMembersResponse">
>   <wsdl:part element="impl:getMembersResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="addMembersResponse">
>   <wsdl:part element="impl:addMembersResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeGroupRequest">
>   <wsdl:part element="impl:removeGroup" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="createGroupRequest">
>   <wsdl:part element="impl:createGroup" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="addMemberResponse">
>   <wsdl:part element="impl:addMemberResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="addMemberRequest">
>   <wsdl:part element="impl:addMember" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="createGroupResponse">
>   <wsdl:part element="impl:createGroupResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="getMembersRequest">
>   <wsdl:part element="impl:getMembers" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeMembersRequest">
>   <wsdl:part element="impl:removeMembers" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="removeGroupResponse">
>   <wsdl:part element="impl:removeGroupResponse" name="parameters" />
>   </wsdl:message>
> - <wsdl:message name="addMembersRequest">
>   <wsdl:part element="impl:addMembers" name="parameters" />
>   </wsdl:message>
> - <wsdl:portType name="GroupsService">
> - <wsdl:operation name="createGroup">
>   <wsdl:input message="impl:createGroupRequest"
> name="createGroupRequest" />
>   <wsdl:output message="impl:createGroupResponse"
> name="createGroupResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="getMembers">
>   <wsdl:input message="impl:getMembersRequest" name="getMembersRequest" />
>   <wsdl:output message="impl:getMembersResponse"
> name="getMembersResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="createGroupWithMembers">
>   <wsdl:input message="impl:createGroupWithMembersRequest"
> name="createGroupWithMembersRequest" />
>   <wsdl:output message="impl:createGroupWithMembersResponse"
> name="createGroupWithMembersResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="addMember">
>   <wsdl:input message="impl:addMemberRequest" name="addMemberRequest" />
>   <wsdl:output message="impl:addMemberResponse" name="addMemberResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="addMembers">
>   <wsdl:input message="impl:addMembersRequest" name="addMembersRequest" />
>   <wsdl:output message="impl:addMembersResponse"
> name="addMembersResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="removeMember">
>   <wsdl:input message="impl:removeMemberRequest"
> name="removeMemberRequest" />
>   <wsdl:output message="impl:removeMemberResponse"
> name="removeMemberResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="removeMembers">
>   <wsdl:input message="impl:removeMembersRequest"
> name="removeMembersRequest" />
>   <wsdl:output message="impl:removeMembersResponse"
> name="removeMembersResponse" />
>   </wsdl:operation>
> - <wsdl:operation name="removeGroup">
>   <wsdl:input message="impl:removeGroupRequest"
> name="removeGroupRequest" />
>   <wsdl:output message="impl:removeGroupResponse"
> name="removeGroupResponse" />
>   </wsdl:operation>
>   </wsdl:portType>
> - <wsdl:binding name="GroupsServiceServiceSoapBinding"
> type="impl:GroupsService">
>   <wsdlsoap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"; />
> - <wsdl:operation name="createGroup">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="createGroupRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="createGroupResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="getMembers">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="getMembersRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="getMembersResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="createGroupWithMembers">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="createGroupWithMembersRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="createGroupWithMembersResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="addMember">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="addMemberRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="addMemberResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="addMembers">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="addMembersRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="addMembersResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="removeMember">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="removeMemberRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="removeMemberResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="removeMembers">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="removeMembersRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="removeMembersResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
> - <wsdl:operation name="removeGroup">
>   <wsdlsoap:operation soapAction="" />
> - <wsdl:input name="removeGroupRequest">
>   <wsdlsoap:body use="literal" />
>   </wsdl:input>
> - <wsdl:output name="removeGroupResponse">
>   <wsdlsoap:body use="literal" />
>   </wsdl:output>
>   </wsdl:operation>
>   </wsdl:binding>
> - <wsdl:service name="GroupsServiceService">
> - <wsdl:port binding="impl:GroupsServiceServiceSoapBinding"
> name="GroupsServiceService">
>   <wsdlsoap:address
> location="http://localhost:8080/osg-dev/services/GroupsServiceService"; />
>   </wsdl:port>
>   </wsdl:service>
>   </wsdl:definitions>
>

Reply via email to