The client code is
- #install SOAP-Lite and MIME-tools packages
-
use SOAP::Lite 'trace', 'debug';
-
-
#override version
-
SOAP::Lite->soapversion('1.2');
-
-
#override credentials
-
sub SOAP::Transport::HTTP::Client::get_basic_credentials {
-
return 'USER' => 'PW';
-
}
-
-
my $result = SOAP::Lite
-
->uri('urn:RiskMetricsDirect:1.0:wspone-service')
-
->proxy('https://ws.uat.riskmetrics.com/wsproxy/basic', timeout => 5)
-
->ListPortfolios()
-
->result;
-
-
print $result;
When it runs, it prints the following, then hangs. If run without credentials, it gets a fobidden message, and I am maxing out my queries, so the login is definitely working.
- SOAP::Transport::HTTP::Client::send_receive: POST https://ws.uat.riskmetrics.com
-
/wsproxy/basic HTTP/1.1
-
Accept: text/xml
-
Accept: multipart/*
-
Accept: application/soap
-
Content-Length: 443
-
Content-Type: application/soap; charset=utf-8
-
SOAPAction: "urn:RiskMetricsDirect:1.0:wspone-service#ListPortfolios"
-
-
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://www.w3.org/2003/05/soap-encoding" xmlns:xsd="http://www.w3.org/2001/XMLSchema" soap:encodingStyle="http://www.w3.org/2003/05/soap-encoding" xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Body><ListPortfolios xmlns="urn:RiskMetricsDirect:1.0:wspone-service" xsi:nil="true" /></soap:Body></soap:Envelope>
When I copy the above request into soapui (www.soapui.org), it goes through just fine. Any ideas are appreciated!
Thanks,
Chris