jdudleyh has asked for the wisdom of the Perl Monks concerning the following question:
I need some help with SOAP::Lite. It seems that SOAP::Lite returns a 404 error if my proxy ("endpoint URL") has a forward slash in it.
Here's my troubleshooting... I have a real web service and a mock web service that use the same WSDL (but have different host/port/service names). I can use XML Spy to successfully call both the real and the mock web service.
In XMLSpy, the real web service uses:
http://real.host.name:18082/Processes/ServiceRequest
and the mock web service uses:
http://localhost:8088/mockPortTypeEndpointBinding
In my Perl script I am able to successfully connect to the mock service using:
but when I try with the real service:$soap = SOAP::Lite -> uri('http://.../') -> proxy('http://localhost:8088/mockPortTypeEndpointBinding');
I get a "404 Not Found" error on the proxy line.$soap = SOAP::Lite -> uri('http://.../') -> proxy('http://real.host.name:18082/Processes/ServiceRequest');
Figuring it has to be the extra forward slash in the service name part of the proxy, I tried to escape it with a backslash -> I get the 404 error; I tried to replace it with "%2F" -> I get "400 Bad Request".
Unfortunately I don't have any control over the name of the real service.
Any ideas to try or suggestions for troubleshooting this?
Thanks
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: SOAP::Lite Doesn't like services with slashes?
by Anonymous Monk on Jun 10, 2013 at 23:21 UTC | |
by jdudleyh (Acolyte) on Jun 11, 2013 at 15:46 UTC | |
by Anonymous Monk on Jun 12, 2013 at 03:07 UTC | |
by jdudleyh (Acolyte) on Jun 28, 2013 at 21:19 UTC |