Title: Message
Hi
 
I have received a WSDL from a customer; the style is document/literal. The stubs/skeleton are generated fine when WSDL2Java is run, but the following error appears when the client code attempts the remote call with the bean:
 
 
Exception in thread "main" AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
 faultSubcode:
 faultString: No such operation 'TradePriceRequest'
 faultActor:
 faultNode:
 faultDetail:
        {http://xml.apache.org/axis/}stackTrace: AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
 faultSubcode:
 faultString: No such operation 'TradePriceRequest'
 faultActor:
 faultNode:
 faultDetail:
 
No such operation 'TradePriceRequest'
        at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
        at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169)
        at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015)
        at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
        at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
        at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
        at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
        at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
        at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
        at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
        at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
        at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
        at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
        at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
        at org.apache.axis.client.Call.invoke(Call.java:2553)
        at org.apache.axis.client.Call.invoke(Call.java:2248)
        at org.apache.axis.client.Call.invoke(Call.java:2171)
        at org.apache.axis.client.Call.invoke(Call.java:1691)
        at com.example.stockquote_wsdl.StockQuoteSoapBindingStub.getLastTradePrice(StockQuoteSoapBindingStub.java:145)
        at com.example.stockquote_wsdl.sqMain.main(sqMain.java:63)
 
Is there something incorrect in the WSDL that has caused the generated WSDD deployment file to be incomplete?
 
The WSDL looks like this (I suspect it is based on the example found at www.w3.org/TR/wsdl):
 
 
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:impl="urn:xml-soapadapter" xmlns:intf="urn:xml-soapadapter" x
mlns:tns="urn:ProvidentProvisioningTNS" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/ws
dl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="urn:ProvidentProvisioningTNS" name="urn:ProvidentProv
isioning">
        <wsdl:types>
                <xsd:schema elementFormDefault="qualified" targetNamespace="urn:ProvidentProvisioningTNS">
                        <xsd:element name="ProvisioningTaskRequest">
                                <xsd:complexType>
                                        <xsd:sequence>
                                                <xsd:element minOccurs="0" maxOccurs="1" name="REQUESTID" type="xsd:string"/>
                                                <xsd:element minOccurs="0" maxOccurs="1" name="SOTYPE" type="xsd:string"/>
                                                <xsd:element minOccurs="0" maxOccurs="1" name="PRIORITY" type="xsd:string"/>
                                                <xsd:element minOccurs="0" maxOccurs="1" name="RECOVERY" type="xsd:string"/>
                                                <xsd:element minOccurs="0" maxOccurs="1" name="XML_SO" type="xsd:string"/>
                                        </xsd:sequence>
                                </xsd:complexType>
                        </xsd:element>
                </xsd:schema>
        </wsdl:types>
        <message name="ProvisioningTaskRequestMessage">
                <part name="body" element="tns:ProvisioningTaskRequest"/>
        </message>
        <message name="ProvisioningTaskAckMessage">
                <part name="body" type="xsd:string"/>
        </message>
        <portType name="ProvisioningTaskRequestPortType">
                <operation name="ProvisioningTaskRequestOperation">
                        <input message="tns:ProvisioningTaskRequestMessage"/>
                        <output message="tns:ProvisioningTaskAckMessage"/>
                </operation>
        </portType>
        <binding name="ProvisioningTaskRequestSoapBinding" type="tns:ProvisioningTaskRequestPortType">
                <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
                <operation name="ProvisioningTaskRequestOperation">
                        <soap:operation soapAction="ProvidentProvisioningTNS/ProvisioningTaskRequestOperation"/>
                        <input>
                                <soap:body use="literal"/>
                        </input>
                        <output>
                                <soap:body use="literal"/>
                        </output>
                </operation>
        </binding>
        <service name="ProvisioningService">
                <documentation>Provident Provisioning Service</documentation>
                <port name="ProvisioningTaskRequestPort" binding="tns:ProvisioningTaskRequestSoapBinding">
                        <soap:address location="http://localhost:8880/axis/services/ProvidentProvisioning"/>
                </port>
        </service>
        <!--  message declns -->
        <!--  port type declns FINISHED -->
        <!--  binding declns FINISHED -->
        <!--  service decln  FINISHED  -->
</wsdl:definitions>
Many thanks for any help that can be provided.
 
Regards
 
Patrick Quinn
 
 

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________

Reply via email to