in reply to SOAP::Lite and proxy settings

Have you tried:
use SOAP::Lite; print SOAP::Lite -> proxy('http://my.proxy.server/') -> service('http://www.xmethods.net/sd/StockQuoteService.wsdl') -> getQuote('MSFT');

Replies are listed 'Best First'.
Re^2: SOAP::Lite and proxy settings
by mrguy123 (Hermit) on Nov 01, 2006 at 16:22 UTC
    Yes. It thinks its the SOAP::Lite proxy, and not the Proxy settings. I get this message: proxy: transport protocol not specified
      I am not getting that error. Hmmm... What version of perl are you using? SOAP::Lite? I did a quick search and found this:
      hi, i posted this message to the yahoo group about soap, but i thought i +'d cover all the bases. here's my posted mesg: After using SOAP::Lite with Perl 5.6.1, I discovered a bug in the software. the problem seems to be with the regex engine and the lines: $_[0] =~ /^(\w+):/ or die "proxy: transport protocol not specified\n +"; my $protocol = uc $1; # untainted now the problem is that the $1 appears to be interpolated in the wrong context. the uc call ends up being AUTOLOAD'ed and calling proxy->ToUpper from the utf8_heavy library. I must confess ignorance as to why this occurs, but here's a super easy patch that will solves the problem for 5.6.1 and will work in 5.005 versions too: it's just wrapping the $1 in a join() to force string context. --- Lite.pm.orig Wed Jun 27 13:28:08 2001 +++ Lite.pm.new Wed Jun 27 15:50:14 2001 @@ -120,7 +120,8 @@ return $self->{_proxy} unless @_; $_[0] =~ /^(\w+):/ or die "proxy: transport protocol not specified\ +n"; - my $protocol = uc $1; # untainted now + ## need to join $1 to force string context in 5.6.1 + my $protocol = uc(join("",$1)); # untainted now # https: should be done through Transport::HTTP.pm for ($protocol) { s/^HTTPS$/HTTP/ } Cheers dave viner