Home » Developer & Programmer » JDeveloper, Java & XML » Cannot find dispatch method (Oracle 10g)
Cannot find dispatch method [message #487131] Thu, 23 December 2010 01:12 Go to next message
virmahi
Messages: 266
Registered: April 2008
Location: India
Senior Member
Hi,
I am calling a webservice from pl/sql.
The wsdl is :-
http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService?wsdl

The constructed XML is as :-
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
       <SOAP-ENV:Header>
               <Security xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                           <UsernameToken> 
                                         <Username>XXXXXX</Username> 
                                         <Password>XXXXXX</Password> 
                           </UsernameToken> 
                </Security>
         </SOAP-ENV:Header>
          <SOAP-ENV:Body>
                  <execute xmlns="http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
                              <SolutionNamespace xsi:type="partns:string">Invoice</SolutionNamespace>
                              <CommandNamespace xsi:type="partns:string">StartInvoice</CommandNamespace>
                              <username xsi:type="partns:string">XXXXXX</username>
                  </execute>
           </SOAP-ENV:Body>
</SOAP-ENV:Envelope>



I am new to XML. The created XML throws the below error when I try to check for faults in XML.
ORA-20000: ns2:Client - Cannot find dispatch method for {http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService}execute
ORA-06512: at "SCOTT.SOAP_API", line 250
ORA-06512: at "SCOTT.SOAP_API", line 299
ORA-06512: at "SCOTT.PKG_MY_WEBSERVICE", line 42
ORA-06512: at line 4



Please suggest as where I ma going wrong and what value I need to put for the method. Please have a look at the WSDL and suggest.

Thanks for looking into this,
Mahi
Re: Cannot find dispatch method [message #487134 is a reply to message #487131] Thu, 23 December 2010 02:00 Go to previous messageGo to next message
Michel Cadot
Messages: 68716
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
ORA-20000 is a custom message from the application,
you have to call the application (webservice) support to get the answer.

Regards
Michel

[Updated on: Thu, 23 December 2010 02:01]

Report message to a moderator

Re: Cannot find dispatch method [message #487141 is a reply to message #487134] Thu, 23 December 2010 02:48 Go to previous messageGo to next message
virmahi
Messages: 266
Registered: April 2008
Location: India
Senior Member
I am printing the xml output when there is an error/fault which is as below:-
<?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns3="http://www.w3.org/2003/05/soap-envelope"><faultcode>ns2:Client</faultcode><faultstring>
Cannot find dispatch method for {http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService}execute</faultstring></ns2:Fault></S:Body></S:Envelope>


Not sure where and how to pass the method which after looking at WSDL seems to be 'execute' as method.

WSDL :-
This XML file does not appear to have any style information associated with it. The document tree is shown below.
      
−
<definitions name="AxfSolutionMediatorService" targetNamespace="http://service.axf.imaging.oracle/">
−
<wsp:Policy wsu:Id="wss_username_token_service_policy">
−
<sp:SupportingTokens>
−
<wsp:Policy>
−
<sp:UsernameToken sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
−
<wsp:Policy>
<sp:WssUsernameToken10/>
</wsp:Policy>
</sp:UsernameToken>
</wsp:Policy>
</sp:SupportingTokens>
</wsp:Policy>
−
<types>
−
<xsd:schema>
<xsd:import namespace="http://service.axf.imaging.oracle/" schemaLocation="http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService?xsd=1"/>
</xsd:schema>
</types>
−
<message name="execute">
<part name="parameters" element="tns:execute"/>
</message>
−
<message name="executeResponse">
<part name="parameters" element="tns:executeResponse"/>
</message>
−
<message name="postConstruct">
<part name="parameters" element="tns:postConstruct"/>
</message>
−
<message name="postConstructResponse">
<part name="parameters" element="tns:postConstructResponse"/>
</message>
−
<portType name="AxfSolutionMediatorWS">
−
<operation name="execute">
<input message="tns:execute"/>
<output message="tns:executeResponse"/>
</operation>
−
<operation name="postConstruct">
<input message="tns:postConstruct"/>
<output message="tns:postConstructResponse"/>
</operation>
</portType>
−
<binding name="AxfSolutionMediatorPortBinding" type="tns:AxfSolutionMediatorWS">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsp:PolicyReference URI="#wss_username_token_service_policy" wsdl:required="false"/>
−
<operation name="execute">
<soap:operation soapAction="execute"/>
−
<input>
<soap:body use="literal"/>
</input>
−
<output>
<soap:body use="literal"/>
</output>
</operation>
−
<operation name="postConstruct">
<soap:operation soapAction=""/>
−
<input>
<soap:body use="literal"/>
</input>
−
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
−
<service name="AxfSolutionMediatorService">
−
<port name="AxfSolutionMediatorPort" binding="tns:AxfSolutionMediatorPortBinding">
<soap:address location="http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService"/>
</port>
</service>
</definitions>


Please advice.

[Updated on: Thu, 23 December 2010 02:50]

Report message to a moderator

Re: Cannot find dispatch method [message #487152 is a reply to message #487141] Thu, 23 December 2010 03:49 Go to previous messageGo to next message
Michel Cadot
Messages: 68716
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Quote:
Please advice

Quote:
ORA-20000 is a custom message from the application,
you have to call the application (webservice) support to get the answer.

Regards
Michel
Re: Cannot find dispatch method [message #487155 is a reply to message #487152] Thu, 23 December 2010 04:12 Go to previous messageGo to next message
virmahi
Messages: 266
Registered: April 2008
Location: India
Senior Member
This is first time I am using XML. So please bear with me for my ignorance.

I have got the link http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService by client. I was supposed to see the WSDL & xsd and do the thing. So do you think I am not wrong anywhere for the error I am getting :-

Cannot find dispatch method for {http://imaging.us.oracle.com:16000/axf-ws/AxfSolutionMediatorService}execute


I have tried a lot but still getting the error for the method 'execute'. Can you please give some guideline... when I can't ask questions to client when I am not sure what exactly to ask Sad

[Updated on: Thu, 23 December 2010 04:16]

Report message to a moderator

Re: Cannot find dispatch method [message #487158 is a reply to message #487155] Thu, 23 December 2010 04:49 Go to previous messageGo to next message
Michel Cadot
Messages: 68716
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Still the same answer.
Did you call the aplication support?
He is the ONLY one that can answer you, it is HIS message.
It is NOT an Oracle RDBMS message.

Regards
Michel

[Updated on: Thu, 23 December 2010 04:49]

Report message to a moderator

Re: Cannot find dispatch method [message #487160 is a reply to message #487158] Thu, 23 December 2010 04:57 Go to previous messageGo to next message
virmahi
Messages: 266
Registered: April 2008
Location: India
Senior Member
I am using the package SOAP_API from www.oracle-base.com/dba/miscellaneous/soap_api.sql. And the messages are handled in the below procedure from the above package...

PROCEDURE check_fault(p_response IN OUT NOCOPY  t_response) AS
-- ---------------------------------------------------------------------
  l_fault_node    XMLTYPE;
  l_fault_code    VARCHAR2(256);
  l_fault_string  VARCHAR2(32767);
BEGIN
  l_fault_node := p_response.doc.extract('/'||p_response.envelope_tag||':Fault',
                                         'xmlns:'||p_response.envelope_tag||'="http://schemas.xmlsoap.org/soap/envelope/');
                                         
  IF (l_fault_node IS NOT NULL) THEN
     dbms_output.put_line('l_fault_node IS NOT NULL...');
    l_fault_code   := l_fault_node.extract('/'||p_response.envelope_tag||':Fault/faultcode/child::text()',
                                           'xmlns:'||p_response.envelope_tag||'="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    l_fault_string := l_fault_node.extract('/'||p_response.envelope_tag||':Fault/faultstring/child::text()',
                                           'xmlns:'||p_response.envelope_tag||'="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    RAISE_APPLICATION_ERROR(-20000, l_fault_code || ' - ' || l_fault_string);
  END IF;
END;


Not sure whom should I call Sad
Re: Cannot find dispatch method [message #487163 is a reply to message #487160] Thu, 23 December 2010 05:08 Go to previous messageGo to next message
Michel Cadot
Messages: 68716
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
It is more a SOAP question. Maybe the following article will help you:
http://articles.techrepublic.com.com/5100-10878_11-1050855.html

Regards
Michel

[Updated on: Thu, 23 December 2010 05:09]

Report message to a moderator

Re: Cannot find dispatch method [message #487164 is a reply to message #487163] Thu, 23 December 2010 05:13 Go to previous messageGo to next message
Michel Cadot
Messages: 68716
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
The following thread could be also useful:
http://markmail.org/message/3bsxufbiavn6zviw

Regards
Michel
Re: Cannot find dispatch method [message #487171 is a reply to message #487164] Thu, 23 December 2010 05:40 Go to previous message
virmahi
Messages: 266
Registered: April 2008
Location: India
Senior Member
The links didn't helped. I am working on calling an authenticated webservices with username/password from pl/sql using the Soap_Api package
Previous Topic: Storing XML File In Server
Next Topic: > Javascript Vs Flash
Goto Forum:
  


Current Time: Sat Nov 23 21:21:36 CST 2024