Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: SOAP::WSDL::Manual and WebLogic authentication

by runrig (Abbot)
on Jul 15, 2013 at 21:37 UTC ( #1044459=note: print w/replies, xml ) Need Help??

in reply to SOAP::WSDL::Manual and WebLogic authentication

If you want to try a different bunch of modules, I'd sugggest XML::Compile. Modifying the http header seems to be covered here. For SOAP::Lite (which I believe SOAP::WSDL uses), modifying the request header is covered here, but I'm not sure how what exactly to specify in SOAP::WSDL.

Update: Basic auth in SOAP::Lite is covered here.

  • Comment on Re: SOAP::WSDL::Manual and WebLogic authentication

Replies are listed 'Best First'.
Re^2: SOAP::WSDL::Manual and WebLogic authentication
by Bill.Costa (Acolyte) on Jul 15, 2013 at 23:31 UTC
    Thanks for the XML::Compile pointer. XML::Pastor also looks promising, at least from the standpoint of my handing it an XSD for generating Perl code for me. As for SOAP::Lite -- I stopped looking at it when it failed to generate an envelope that the server liked. The envelope was sufficiently different from what does work, I set it aside. I think you are right, however, that the authentication problem is probably easier to solve with SOAP::Lite. Perhaps the envelope problem is worth look at in more detail.
    # Handcraft XML -- works. my $SOAP_UI_MIN = <<'END_SOAP_UI_MIN'; <soapenv:Envelope xmlns:soapenv="" xmlns:ser=""> <soapenv:Body> <ser:userSearch> <firstName>John</firstName> <lastName>Smith</lastName> </ser:userSearch> </soapenv:Body> </soapenv:Envelope> END_SOAP_UI_MIN # Generated by SOAP::WSDL -- works. my $PSOAP_WSDL_MIN = <<'END_PSOAP_WSDL_MIN'; <SOAP-ENV:Envelope xmlns:xsi="" xmlns:SOAP-ENV="" > <SOAP-ENV:Body> <userSearch xmlns=""> <firstName xmlns="">John</firstName> <lastName xmlns="">Smith</lastName> </userSearch> </SOAP-ENV:Body> </SOAP-ENV:Envelope> END_PSOAP_WSDL_MIN # Generated by SOAP::Lite -- doesn't work. my $PSOAP_LITE_MIN = <<'END_PSOAP_LITE_MIN'; <soap:Envelope xmlns:xsi="" xmlns:soapenc="" xmlns:xsd="" soap:encodingStyle="" xmlns:soap=""> <soap:Body> <userSearch xmlns=" +uest"> <c-gensym3> <firstName xsi:type="xsd:string">John</firstName> <lastName xsi:type="xsd:string">Smith</lastName> </c-gensym3> </userSearch> </soap:Body> </soap:Envelope> END_PSOAP_LITE_MIN
    The last is rejected with...
    Cannot find dispatch method for { +serSearchRequest}userSearch
    I'm clueless about why SOAP::Lite generates what it does from the WSDL or how to coerce it to generate an acceptable envelope.
      The namespaces and other attributes in the SOAP body should be coming from the wsdl, so I can't comment on what's supposed be there.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1044459]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (8)
As of 2017-05-25 00:56 GMT
Find Nodes?
    Voting Booth?