SOAP::Lite in PerlApp

jplindstrom on 2003-07-02T07:59:05

Note to self (and others):

When building a PerlApp using SOAP::Lite, (it's a simple client using HTTP as the transport method), these modules must be statically used.

use SOAP::Transport::HTTP; use LWP::Protocol::http; use URI::http;

If not, PerlApp will not include them, causing SOAP::Lite calls to fail in mysterious ways with error messages like: Can't locate object method "host" via package "URI::_foreign" (perhaps you forgot to load "URI::_foreign"?)


statically used

inkdroid on 2003-07-02T14:48:18

Statically used like:

use SOAP::Lite;

Rather than

eval( 'use SOAP::Lite' );

?

Re:statically used

jplindstrom on 2003-07-02T17:48:53

Statically as in actually brought in at compile time. But see the other reply as to why I should upgrade.

You must be using an old version of PerlApp

jand on 2003-07-02T14:54:24

The heuristics in PerlApp build 401 (1-Feb-2002) and later should handle this automatically.

If you actually do need to do this for later versions of PerlApp, then I would like to see a specific test case, as the current regression test doesn't catch it (and I can't reproduce the problem manually either with the soaplite cookbook example).

Re:You must be using an old version of PerlApp

jplindstrom on 2003-07-02T17:47:02

As per usual I'm stuck with the antiquated version 2. Mostly because I can't find any reason to upgrade. Maybe I just found one :)

Actually, I'll check out PAR to see if that works, so you may be out of luck altogether :)