Pravir Ramtekkar wrote:
My WSDL uses 'literal' and has SOAP, HttpGet and HttpPost port types. Dynamic Invoker works fine with the test.
it did not work for me - did you any special mapping?!
Could you please look into this ASAP.
i can not reproduce the problem - could you send me also the client code?
java clients.DynamicInvoker C:\Forge\ws-apache-cvs\ws-wsif\feedback\method_pravir\PartnersQueryService.wsdl query(PartnersQueryServiceSoap) test
Reading WSDL document from 'C:\Forge\ws-apache-cvs\ws-wsif\feedback\method_pravir\PartnersQueryService.wsdl'
Preparing WSIF dynamic invocation
java.lang.RuntimeException: part type {http://www.openuri.org/}ResultSet not supported in this sample
at clients.DynamicInvoker.retrieveSignature(DynamicInvoker.java:342)
at clients.DynamicInvoker.invokeMethod(DynamicInvoker.java:288)
at clients.DynamicInvoker.main(DynamicInvoker.java:117)
Exception in thread "main"
thanks,
alek
thanx, Pravir
Aleksander Slominski wrote:
> Pravir Ramtekkar wrote:
>
>>
>> Bugzilla Bug 25799
>> WSIFException trying to match WSDL method to class method using java
>> binding
>>
>> Hi,
>> I have been struggling to get over this issue a last couple of days.
>> works great for one WSDL( rpc style) but doesn't work with another
>> (literal style).
>>
>> I see only this bug which addresses the issue but the workaround given
>> in there doesn't help me because I am not using DataHandlers.
>> it's a simple method
>> public void myObject query(String)
>>
>> which returns following exception :
>> org.apache.wsif.WSIFException: Method query(class java.lang.String) was
>> not found in portType {http://www.openuri.org/}PartnersQueryServiceSoap
>> at
>> org.apache.wsif.base.WSIFClientProxy.findMatchingOperation(WSIFClientProxy.java:599)
>>
>> at org.apache.wsif.base.WSIFClientProxy.invoke(WSIFClientProxy.java:243)
>>
>>
>>
>> I dont see any activity on this bug and it's still NEW and not assigned.
>> Is this bug being addressed at all or is not a bug?
>
>
> hi,
>
> Bugzilla is *no* longer used, use JIRA instead:
>
> http://nagoya.apache.org/jira/browse/WSIF-59
>
> please login into JIRA and add description of your problem and how to
> reproduce it
> (i could not fund WSDL for
> {http://www.openuri.org/}PartnersQueryServiceSoap ...)
>
> thanks,
>
> alek
>
------------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?> <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/" xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.openuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.openuri.org/"> <types> <s:schema xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:ope="http://www.openuri.org/" elementFormDefault="qualified" targetNamespace="http://www.openuri.org/"> <s:element name="query"> <s:complexType> <s:sequence> <s:element name="queryString" type="s:string" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="queryResponse"> <s:complexType> <s:sequence> <s:element name="queryResult" type="ope:ResultSet" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="ResultSet" nillable="true" type="ope:ResultSet"/> <s:element name="helloWorld"> <s:complexType> <s:sequence> <s:element name="queryString" type="s:string" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="helloWorldResponse"> <s:complexType> <s:sequence> <s:element name="helloWorldResult" type="s:string" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="string" nillable="true" type="s:string"/> <s:element name="queryTest"> <s:complexType> <s:sequence> <s:element name="queryString" type="s:string" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="queryTestResponse"> <s:complexType> <s:sequence> <s:element name="queryTestResult" type="ope:ResultSetTest" minOccurs="0"/> </s:sequence> </s:complexType> </s:element> <s:element name="ResultSetTest" nillable="true" type="ope:ResultSetTest"/> <s:complexType name="ResultSet"> <s:sequence> <s:element name="Query" type="s:string" minOccurs="0"/> <s:element name="RowCount" type="s:int"/> <s:element name="ColumnCount" type="s:int"/> <s:element name="ColumnNames" type="ope:ArrayOfString" minOccurs="0"/> <s:element name="ResultRows" type="ope:ArrayOfRowData" minOccurs="0"/> </s:sequence> </s:complexType> <s:complexType name="ArrayOfString"> <s:sequence> <s:element name="String" type="s:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/> </s:sequence> </s:complexType> <s:complexType name="ArrayOfRowData"> <s:sequence> <s:element name="RowData" type="ope:RowData" nillable="true" minOccurs="0" maxOccurs="unbounded"/> </s:sequence> </s:complexType> <s:complexType name="RowData"> <s:sequence> <s:element name="Cells" type="ope:ArrayOfanyType" minOccurs="0"/> </s:sequence> </s:complexType> <s:complexType name="ArrayOfanyType"> <s:sequence> <s:element name="anyType" type="s:anyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/> </s:sequence> </s:complexType> <s:complexType name="ResultSetTest"> <s:sequence> <s:element name="Query" type="s:string" minOccurs="0"/> <s:element name="RowCount" type="s:int"/> <s:element name="ColumnCount" type="s:int"/> <s:element name="ColumnNames" type="ope:ArrayOfString" minOccurs="0"/> </s:sequence> </s:complexType> </s:schema>
</types> <message name="querySoapIn"> <part name="parameters" element="s0:query"/> </message> <message name="querySoapOut"> <part name="parameters" element="s0:queryResponse"/> </message> <message name="helloWorldSoapIn"> <part name="parameters" element="s0:helloWorld"/> </message> <message name="helloWorldSoapOut"> <part name="parameters" element="s0:helloWorldResponse"/> </message> <message name="queryTestSoapIn"> <part name="parameters" element="s0:queryTest"/> </message> <message name="queryTestSoapOut"> <part name="parameters" element="s0:queryTestResponse"/> </message> <message name="queryHttpGetIn"> <part name="queryString" type="s:string"/> </message> <message name="queryHttpGetOut"> <part name="Body" element="s0:ResultSet"/> </message> <message name="helloWorldHttpGetIn"> <part name="queryString" type="s:string"/> </message> <message name="helloWorldHttpGetOut"> <part name="Body" element="s0:string"/> </message> <message name="queryTestHttpGetIn"> <part name="queryString" type="s:string"/> </message> <message name="queryTestHttpGetOut"> <part name="Body" element="s0:ResultSetTest"/> </message> <message name="queryHttpPostIn"> <part name="queryString" type="s:string"/> </message> <message name="queryHttpPostOut"> <part name="Body" element="s0:ResultSet"/> </message> <message name="helloWorldHttpPostIn"> <part name="queryString" type="s:string"/> </message> <message name="helloWorldHttpPostOut"> <part name="Body" element="s0:string"/> </message> <message name="queryTestHttpPostIn"> <part name="queryString" type="s:string"/> </message> <message name="queryTestHttpPostOut"> <part name="Body" element="s0:ResultSetTest"/> </message> <portType name="PartnersQueryServiceSoap"> <operation name="query"> <input message="s0:querySoapIn"/> <output message="s0:querySoapOut"/> </operation> <operation name="helloWorld"> <input message="s0:helloWorldSoapIn"/> <output message="s0:helloWorldSoapOut"/> </operation> <operation name="queryTest"> <input message="s0:queryTestSoapIn"/> <output message="s0:queryTestSoapOut"/> </operation> </portType> <portType name="PartnersQueryServiceHttpGet"> <operation name="query"> <input message="s0:queryHttpGetIn"/> <output message="s0:queryHttpGetOut"/> </operation> <operation name="helloWorld"> <input message="s0:helloWorldHttpGetIn"/> <output message="s0:helloWorldHttpGetOut"/> </operation> <operation name="queryTest"> <input message="s0:queryTestHttpGetIn"/> <output message="s0:queryTestHttpGetOut"/> </operation> </portType> <portType name="PartnersQueryServiceHttpPost"> <operation name="query"> <input message="s0:queryHttpPostIn"/> <output message="s0:queryHttpPostOut"/> </operation> <operation name="helloWorld"> <input message="s0:helloWorldHttpPostIn"/> <output message="s0:helloWorldHttpPostOut"/> </operation> <operation name="queryTest"> <input message="s0:queryTestHttpPostIn"/> <output message="s0:queryTestHttpPostOut"/> </operation> </portType> <binding name="PartnersQueryServiceSoap" type="s0:PartnersQueryServiceSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <operation name="query"> <soap:operation soapAction="http://www.openuri.org/query" style="document"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> </operation> <operation name="helloWorld"> <soap:operation soapAction="http://www.openuri.org/helloWorld" style="document"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> </operation> <operation name="queryTest"> <soap:operation soapAction="http://www.openuri.org/queryTest" style="document"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> </operation> </binding> <binding name="PartnersQueryServiceHttpGet" type="s0:PartnersQueryServiceHttpGet"> <http:binding verb="GET"/> <operation name="query"> <http:operation location="/query"/> <input> <http:urlEncoded/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> <operation name="helloWorld"> <http:operation location="/helloWorld"/> <input> <http:urlEncoded/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> <operation name="queryTest"> <http:operation location="/queryTest"/> <input> <http:urlEncoded/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> </binding> <binding name="PartnersQueryServiceHttpPost" type="s0:PartnersQueryServiceHttpPost"> <http:binding verb="POST"/> <operation name="query"> <http:operation location="/query"/> <input> <mime:content type="application/x-www-form-urlencoded"/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> <operation name="helloWorld"> <http:operation location="/helloWorld"/> <input> <mime:content type="application/x-www-form-urlencoded"/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> <operation name="queryTest"> <http:operation location="/queryTest"/> <input> <mime:content type="application/x-www-form-urlencoded"/> </input> <output> <mime:mimeXml part="Body"/> </output> </operation> </binding> <service name="PartnersQueryService"> <port name="PartnersQueryServiceSoap" binding="s0:PartnersQueryServiceSoap"> <soap:address location="http://rchweb02.fnc.fujitsu.com:9060/PartnersQueryService/PartnersQueryService.jws"/> </port> <port name="PartnersQueryServiceHttpGet" binding="s0:PartnersQueryServiceHttpGet"> <http:address location="http://rchweb02.fnc.fujitsu.com:9060/PartnersQueryService/PartnersQueryService.jws"/> </port> <port name="PartnersQueryServiceHttpPost" binding="s0:PartnersQueryServiceHttpPost"> <http:address location="http://rchweb02.fnc.fujitsu.com:9060/PartnersQueryService/PartnersQueryService.jws"/> </port> </service> </definitions>
-- The best way to predict the future is to invent it - Alan Kay
