You must remove all the namespace attributes from the <soap:body>, <soap:header>, and <soap:fault> definitions in the binding. (There is a bug in Axis2 that causes these attributes to be generated in a document style service.)

Anne

On 6/4/06, DO <[EMAIL PROTECTED]> wrote:
here we go:

***************************WSDL START

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap12=" http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:http=" http://schemas.xmlsoap.org/wsdl/http/"
        xmlns:ns1="http://tests.ws.dbvr.com/types"
xmlns:ns="http://tests.ws.dbvr.com "
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
targetNamespace="http://tests.ws.dbvr.com">
        <wsdl:types>
                <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:types=" http://tests.ws.dbvr.com/types"
targetNamespace="http://tests.ws.dbvr.com/types"
elementFormDefault="unqualified" attributeFormDefault="unqualified">
                        <xs:element name="msg">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element type="xs:string" name="token" />
                                                <xs:element type="xs:string" name="phone" />
                                                <xs:element type="xs:string" name="message" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="msgResponse">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element type="xs:long" name="return" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="statusDTO">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element type="xs:string" name="token" />
                                                <xs:element type="xs:long" name="event" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="statusResponse">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element type="xs:int" name="return" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="ProcessFlowContext">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element type="xs:string" name="id" />
                                                <xs:element type="xs:string" name="user" />
                                                <xs:element type="xs:string" name="pswd" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="ServiceException">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="exceptionId" type="xs:string" />
                                                <xs:element name="exceptionText" type="xs:string" />
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                </xs:schema>
        </wsdl:types>
        <wsdl:message name="serviceFault">
                <wsdl:part element="ns1:ServiceException" name="part1" />
        </wsdl:message>
        <wsdl:message name="authHeader">
                <wsdl:part element="ns1:ProcessFlowContext" name="part1" />
        </wsdl:message>
        <wsdl:message name="getStatusMessage">
                <wsdl:part element="ns1:statusDTO" name="part1" />
        </wsdl:message>
        <wsdl:message name="getStatusResponseMessage">
                <wsdl:part element="ns1:statusResponse" name="part1" />
        </wsdl:message>
        <wsdl:message name="sendMessageMessage">
                <wsdl:part element="ns1:msg" name="part1" />
        </wsdl:message>
        <wsdl:message name="sendMessageResponseMessage">
                <wsdl:part element="ns1:msgResponse" name="part1" />
        </wsdl:message>
        <wsdl:portType name="VoiceGatewayPortType">
                <wsdl:operation name="getStatus">
                        <wsdl:input message="ns:getStatusMessage" />
                        <wsdl:output message="ns:getStatusResponseMessage" />
                </wsdl:operation>
                <wsdl:operation name="sendMessage">
                        <wsdl:input message="ns:sendMessageMessage" />
                        <wsdl:output message="ns:sendMessageResponseMessage" />
                </wsdl:operation>
        </wsdl:portType>
        <wsdl:binding type="ns:VoiceGatewayPortType"
name="VoiceGatewaySOAP11Binding">
                <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
                <wsdl:operation name="getStatus">
                        <soap:operation style="document" soapAction="urn:getStatus" />
                        <wsdl:input>
                                <soap:body namespace="http://tests.ws.dbvr.com" use="literal"/>
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="part1" use="literal" />
                        </wsdl:input>
                        <wsdl:output>
                                <soap:body namespace="http://tests.ws.dbvr.com" use="literal" />
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="part1" use="literal" />
                        </wsdl:output>
                        <wsdl:fault>
                                <soap:fault namespace="http://tests.ws.dbvr.com"
message="ns:serviceFault" part="part1" use="literal"/>
                        </wsdl:fault>
                </wsdl:operation>
                <wsdl:operation name="sendMessage">
                        <soap:operation style="document" soapAction="urn:sendMessage" />
                        <wsdl:input>
                                <soap:body namespace="http://tests.ws.dbvr.com" use="literal" />
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="part1" use="literal" />
                        </wsdl:input>
                        <wsdl:output>
                                <soap:body namespace="http://tests.ws.dbvr.com" use="literal" />
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="part1" use="literal" />
                        </wsdl:output>
                        <wsdl:fault>
                                <soap:fault namespace="http://tests.ws.dbvr.com"
message="ns:serviceFault" part="part1" use="literal"/>
                        </wsdl:fault>
                </wsdl:operation>
        </wsdl:binding>
        <wsdl:binding type="ns:VoiceGatewayPortType"
name="VoiceGatewaySOAP12Binding">
                <soap12:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
                <wsdl:operation name="getStatus">
                        <soap12:operation style="document" soapAction="urn:getStatus" />
                        <wsdl:input>
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="authPart" use="literal" />
                                <soap12:body namespace=" http://tests.ws.dbvr.com" use="literal" />
                        </wsdl:input>
                        <wsdl:output>
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="authPart" use="literal" />
                                <soap12:body namespace=" http://tests.ws.dbvr.com" use="literal" />
                        </wsdl:output>
                </wsdl:operation>
                <wsdl:operation name="sendMessage">
                        <soap12:operation style="document" soapAction="urn:sendMessage" />
                        <wsdl:input>
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="authPart" use="literal" />
                                <soap12:body namespace=" http://tests.ws.dbvr.com" use="literal" />
                        </wsdl:input>
                        <wsdl:output>
                                <soap:header namespace=" http://tests.ws.dbvr.com"
message="ns:authHeader" part="authPart" use="literal" />
                                <soap12:body namespace=" http://tests.ws.dbvr.com" use="literal" />
                        </wsdl:output>
                </wsdl:operation>
        </wsdl:binding>
        <wsdl:service name="VoiceGateway">
                <wsdl:port binding="ns:VoiceGatewaySOAP11Binding"
name="VoiceGatewaySOAP11port0">
                        <soap:address
location="http://localhost:8080/axis2/services/VoiceGateway" />
                </wsdl:port>
                <wsdl:port binding="ns:VoiceGatewaySOAP12Binding"
name="VoiceGatewaySOAP12port0">
                        <soap12:address
location="http://localhost:8080/axis2/services/VoiceGateway " />
                </wsdl:port>
        </wsdl:service>
</wsdl:definitions>

***************************WSDL END

On Sun, 2006-06-04 at 22:21 -0400, Anne Thomas Manes wrote:
> Please also post the WSDL.
>
> On 6/4/06, DO <[EMAIL PROTECTED]> wrote:
>         nope, the body is there. i am using ADB. Shall I switch to
>         xmlbeans for
>         data bindings?
>
>         here is the soap message:
>
>         <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
>         xmlns:soapenv=" http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><ns1:ProcessFlowContext xmlns:ns1="http://tests.ws.dbvr.com/types "><id>111111111</id><user>ege</user><pswd>hh</pswd></ns1:ProcessFlowContext></soapenv:Header><soapenv:Body><ns1:msg xmlns:ns1=" http://tests.ws.dbvr.com/types"><token>erewtr4</token><phone>sfddffcew</phone><message>efewfde</message></ns1:msg></soapenv:Body></soapenv:Envelope>
>
>         the sample works fine in axis1, by the way!
>
>         Denis
>
>         On Sun, 2006-06-04 at 17:32 -0400, Anne Thomas Manes wrote:
>         > Please provide more information. Based on the error message,
>         it would
>         > appear thta you are not including a body element (which is
>         required).
>         >
>         > On 6/3/06, DO < [EMAIL PROTECTED]> wrote:
>         >         Hello,
>         >
>         >         I am trying to test a service with the header. I
>         auto
>         >         generated stubs
>         >         and every time I invoke the service it returns the
>         following
>         >         message:
>         >
>         >         org.apache.axis2.AxisFault : SOAPEnvelope must
>         contain a body
>         >         element
>         >         which is either first or second child element of
>         the
>         >         SOAPEnvelope.
>         >
>         >         The service works fine if the header is not set. The
>         header is
>         >         a simple
>         >         object with 3 string fields. I do not have a header
>         handler on
>         >         the
>         >         server side.
>         >
>         >         Any help would be appreciated.
>         >
>         >         Cheers,
>         >         Denis
>         >
>         >
>         >
>         ---------------------------------------------------------------------
>         >         To unsubscribe, e-mail:
>         [EMAIL PROTECTED]
>         >         For additional commands, e-mail:
>         [EMAIL PROTECTED]
>         >
>         >
>
>
>         ---------------------------------------------------------------------
>         To unsubscribe, e-mail: [EMAIL PROTECTED]
>         For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to