Hi
Feng
First
of all, thanks for taking the time to reply.
I've
made the change and regenerated the stub + skeleton, then
rerun.
The No
Such Operation error is still there.
Your
suggestion, however, did cure one problem I had noticed, an extraneous closing
angled bracket in the deploy.wsdd file.
$ diff
deploy.wsdd
deployModified.wsdd
< qname="ns:>ProvisioningTaskRequest"
---
> qname="ns:ProvisioningTaskRequest"
< qname="ns:>ProvisioningTaskRequest"
---
> qname="ns:ProvisioningTaskRequest"
Regards
Pat
-----Original Message-----
From: Feng Xie (fxie) [mailto:[EMAIL PROTECTED]
Sent: 15 June 2005 16:22
To: [email protected]
Subject: RE: No such operation error - malformed WSDL?Patrick:Can you replace the location line in your wsdl with the following line and regenerate stub and skeleton ?<soap:address location="http://localhost:8880/axis/services/ProvisioningTaskRequestPort">Feng
From: Patrick Quinn [mailto:[EMAIL PROTECTED]
Sent: Wednesday, June 15, 2005 10:37 AM
To: [email protected]
Subject: No such operation error - malformed WSDL?HiI have received a WSDL from a customer. The style is document/literal. The stubs/skeleton are generated fine when WSDL2Java is run, but a 'no such operation' error appears when the client code attempts the remote call with the bean.Is there something incorrect in the WSDL that has caused the generated WSDD deployment file to be incomplete?Many thanks for any help that can be provided. Data is below.RegardsPatrick Quinnerror textException in thread "main" AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: No such operation 'ProvisioningTaskRequest'
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace: AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalExceptionfaultSubcode:
faultString: No such operation &apos;ProvisioningTaskRequest&apos;
faultActor:
faultNode:
faultDetail:No such operation 'ProvisioningTaskRequest'
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260). . .
at org.apache.axis.client.Call.invoke(Call.java:1691)
at ProvidentProvisioningTNS.ProvisioningTaskRequestSoapBindingStub.provisioningTaskRequestOperation(ProvisioningTaskRequestSoapBindingStub.java:140)
at ProvidentProvisioningTNS.Main2.main(Main2.java:63)
No such operation 'ProvisioningTaskRequest'
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
etc.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>
deploy.wsdd file
<deployment
xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"><!-- Services from ProvisioningService WSDL service --><service name="ProvisioningTaskRequestPort" provider="java:RPC" style="document" use="literal">
<requestFlow>
<handler type="soapmonitor"/>
</requestFlow>
<responseFlow>
<handler type="soapmonitor"/>
</responseFlow>
<parameter name="wsdlTargetNamespace" value="urn:ProvidentProvisioningTNS"/>
<parameter name="wsdlServiceElement" value="ProvisioningService"/>
<parameter name="wsdlServicePort" value="ProvisioningTaskRequestPort"/>
<parameter name="className" value="ProvidentProvisioningTNS.ProvisioningTaskRequestSoapBindingSkeleton"
/>
<parameter name="wsdlPortType" value="ProvisioningTaskRequestPortType"/>
<parameter name="allowedMethods" value="*"/>
<parameter name="scope" value="Session"/><typeMapping
xmlns:ns="urn:ProvidentProvisioningTNS"
qname="ns:>ProvisioningTaskRequest"
type="java:ProvidentProvisioningTNS._ProvisioningTaskRequest"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle=""
/>
</service>
</deployment>
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
