[Israel.pm] SOAP::Lite autodispatch problems
Ephraim Dan
E.Dan at F5.com
Wed Apr 20 05:56:00 PDT 2005
Hi Dana,
It looks to me like the problem is that your SFXAdmin::SOAP object
contains a DBI object in it. This object will not pass over SOAP and
continue to be a real blessed reference. You will need to re-create the
object in your SFXAdmin::SOAP object that you get back from SOAP with
something like:
$sfxadmin->{dbh} = DBI->new();
Although, in your case it's probably more like:
$sfxadmin->{engine} = IOL::Engine->new();
I think Andres wrote code like that in the SOAP stuff he did for
SFXResolver...
Hope that helps,
Ephraim
> -----Original Message-----
> From: perl-bounces at perl.org.il [mailto:perl-bounces at perl.org.il] On
Behalf
> Of Dana Moshkovits
> Sent: Wednesday, April 20, 2005 15:00
> To: perl at perl.org.il
> Subject: [Israel.pm] SOAP::Lite autodispatch problems
>
> Hello,
> I have a module that connects to a database and has a couple of
> methods for updating the database, I have a program that uses the
> module and it functions as expected.
> I am trying to use the same module with a SOAP wrapper and here is
> where I need some help:
>
>
> This is my client code:
>
> use SOAP::Lite +autodispatch =>
> uri => 'SFXAdmin::SOAP',
> proxy =>
'http://10.1.235.47:3210/dm_3/cgi/core/soap/sfxadmin.cgi';
>
> my $sfxadmin =SFXAdmin::SOAP->new();
>
> print
$sfxadmin->acitivate_record('TARGET_SERVICE','111068679117002','1');
>
> If I dump $sfxadmin the result is as expects i get a SFXAdmin::SOAP
> objcet but the error message that I get when it tries to run the
> method 'acitivate_record' is :
> SV = RV(0x8cb6210) at 0x8cb7420
> REFCNT = 1
> FLAGS = (ROK)
> RV = 0x8cb718c
> SV = RV(0x8cb61c8) at 0x8cb5dbc
> REFCNT = 1
> FLAGS = (ROK,READONLY)
> RV = 0x8cb718c
> (in cleanup) dbih_getcom handle DBI::db=HASH(0x8cb718c) is not
> a DBI handle (has no magic) at
> /exlibris/sfx_ver/sfx_version_3/dm_3/cgi/core/soap/sfxadmin.cgi line
> 21.
>
> Any ideas?
>
> Thanks
> Dana
>
> By the way this is my server code:
>
> use SOAP::Transport::HTTP;
> use SFXAdmin::SOAP;
>
> SOAP::Transport::HTTP::CGI
> -> dispatch_to('SFXAdmin::SOAP')
> -> handle;
>
> exit(0);
>
> _______________________________________________
> Perl mailing list
> Perl at perl.org.il
> http://perl.org.il/mailman/listinfo/perl
More information about the Perl
mailing list