Kosovar has asked for the wisdom of the Perl Monks concerning the following question:

Dear Monks,
i have a probleme, i would like to communicate with WSDL but i have this error message :

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Body> <s:Fault> <faultcode xmlns:a="http://schemas.microsoft.com/ws/2005/05/ad +dressing/none">a:ActionNotSupported</faultcode> <faultstring xml:lang="fi-FI"> The message with Action 'http://domainws.ficora.fi.ope +rations/DomainNameWS/Ping#Ping' cannot be processed at the receiver, +due to a ContractFilter mismatch at the EndpointDispatcher. This may +be because of either a contract mismatch (mismatched Actions between +sender and receiver) or a binding/security mismatch between the sende +r and the receiver. Check that sender and receiver have the same con +tract and the same binding (including security requirements, e.g. Mes +sage, Transport, None). </faultstring> </s:Fault> </s:Body> </s:Envelope>

Somebody know what is my problem? i tried some code, example :

use SOAP::Lite; my $client = SOAP::Lite ->uri('https:url?wsdl') ->proxy('https://url'); my $var = SOAP::Data->type('string'); $var->name('pingValue'); $var->value("10.10.10.10"); # make the call my $result = $client->Ping($var); # check for error unless ($result->fault) { print $result->result(); } else { # error handling print join ', ', $result->faultcode, $result->faultstring, $result->faultdetail; }

Thanks in advance.

Replies are listed 'Best First'.
Re: SOAP WSDL error : a:ActionNotSupported
by Anonymous Monk on Feb 17, 2015 at 10:44 UTC

    Somebody know what is my problem?

    The message seems clear about what the problem is (what you're sending, what you're asking for, the server doesn't like)

    The solution is unguessable, you'd have to consult the docs ... which are often nothing more than WSDL ... which is like special type of XML language I don't speak (and SOAP::Lite kinda speaks)

    So to fix the problem you'd have to adjust your code somehow but nobody will be able to help you with that as they can't guess what url/wsdl you're using ...

    Some links/tips can be found in Re: SOAP::Lite error

    Good luck with that :)

      Thanks,
      i will continue to test.