Tantely
Tantely

Reputation: 59

How to fix "faultString: [Virtuoso SOAP server] There is no such procedure" Webservice cfinvoke CF11?

I am getting the following error when invoking the web service with the <cfinvoke> tag using ColdFusion 11.

faultString: [Virtuoso SOAP server] There is no such procedure

I have passed all of the correct arguments to the method (respecting argument names case).

Calling code

<cfinvoke Webservice="absolute link" method="method name" wsversion="1" refreshwsdl="true">
    <cfinvokeargument name="paramone" value="valone">
    <cfinvokeargument name="paramtwo" value="valtwo">
</cfinvoke>

Thanks in advance for your help.

Upvotes: 0

Views: 64

Answers (1)

Tantely
Tantely

Reputation: 59

I've found the solution. For some reasons, the use of the cfinvoke tag does not work for consuming their web service.

I've used the cfhttp tag as an alternative and added an header parameter called "SOAPAction" and sets it to a specific value which I cannot share here. Also the action attribute needed to be set to "POST".

The final workaround code is the following (where wsRequest variable is the xml to be sent):

<cfhttp method="post" url="#application.WSDLEndpoint#">
    <cfhttpparam type="header" name="content-type" value="text/xml"> 
    <cfhttpparam type="header" name="SOAPAction" value="[specific absolute link]"> 
    <cfhttpparam type="header" name="charset" value="utf-8"> 
    <cfhttpparam type="xml" value="#wsRequest#" >
</cfhttp>

Upvotes: 2

Related Questions