Anne
On 4/19/06, Griffin, Mark <[EMAIL PROTECTED]> wrote:
I have what I thought was a simple doc/literal wrapped style WSDL. I'm
trying to do WSDL first design. I'm using Axis .94 to generate the
server side code. That all goes okay. When a request comes in I'm
getting a error which I've attached. I understand that this is a
namespace issue but what I don't see is what is wrong with the WSDL. I
believe it is valid but does anyone see an error that I missed in the
syntax? I used two separate clients trying to post to this service, one
from Axis and one from webMethods. They both give the same error.
**Error**
aused by: java.lang.RuntimeException: Data binding error
at
org.apache.axis2.CreateTicketMessageReceiver.fromOM(CreateTicketMessageR
eceiver.java:120)
at
org.apache.axis2.CreateTicketMessageReceiver.invokeBusinessLogic(CreateT
icketMessageReceiver.java:50)
... 20 more
Caused by: org.apache.xmlbeans.XmlException: error: The document is not
a [EMAIL PROTECTED]:www.pgn.wbmethod:servicerequest: document element
namespace mismatch expected "urn:www.pgn.wbmethod:servicerequest" got
"urn:www.pgn.wbmethod:servicerequesttypes"
If I take out the xmlns:ter="urn:www.pgn.wbmethod:servicerequesttypes"
and any references to it then the Axis client works. But I think it
should work the other way.
****WSDL**
<?xml version=" 1.0" encoding="UTF-8"?>
<wsdl:definitions name="ServiceRequestSample"
targetNamespace="urn:www.pgn.wbmethod:servicerequest"
xmlns:soap=" http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:http=" http://schemas.xmlsoap.org/wsdl/http/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ser="urn:www.pgn.wbmethod:servicerequest"
xmlns:ter="urn:www.pgn.wbmethod:servicerequesttypes">
<wsdl:types>
<xs:schema elementFormDefault="qualified"
xmlns:xs=" http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:www.pgn.wbmethod:servicerequesttypes">
<xs:complexType name="ServiceRequestType">
<xs:sequence>
<xs:element name="customerid" type="xs:string"/>
<xs:element name="address1" type="xs:string"/>
<xs:element name="address2" type="xs:string"/>
<xs:element name="problemdescription"
type="xs:string"/>
<xs:element name="contact" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ServiceResponseType">
<xs:sequence>
<xs:element name="ticketnumber"
type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="ServiceRequest"
type="ter:ServiceRequestType"/>
<xs:element name="ServiceResponse"
type="ter:ServiceResponseType"/>
</xs:schema>
</wsdl:types>
<wsdl:message name="createservicerequest">
<wsdl:part name="parameters"
element="ter:ServiceRequest"/>
</wsdl:message>
<wsdl:message name="createserviceresponse">
<wsdl:part name="parameters"
element="ter:ServiceResponse"/>
</wsdl:message>
<wsdl:portType name="CreateTicket">
<wsdl:operation name="ServiceRequest">
<wsdl:input message="ser:createservicerequest"/>
<wsdl:output message="ser:createserviceresponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="servicerequestBinding"
type="ser:CreateTicket">
<soap:binding
transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="ServiceRequest">
<soap:operation soapAction="" 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="serviceCreateTicket">
<wsdl:port name="servicerequestPort"
binding="ser:servicerequestBinding">
<soap:address
location="http://localhost:8080/axis2/services/createticket"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
markg
Mark E. Griffin
Developer Services
Progress Energy