Skip to main content.
home | support | download

Back to List Archive

Re: SWISH::API and my lame perl skillz....

From: Bill Moseley <moseley(at)>
Date: Mon Jan 24 2005 - 23:47:10 GMT
I'm not seeing what the problem is, either, although I'm not sure I'd
trust that the message is (or isn't) a problem in SOAP just because of
those errors (in your later message).

The message is also odd.  I assume that you are not really using
"fields" in your program.

On Mon, Jan 24, 2005 at 01:26:18PM -0800, Brad Miele wrote:
> my $i = 1; my @swish_return;
> while ( (my $result = $results->NextResult) && ($i <=  $max_res) )
> {
>                 my $res;
>                 my @props = $result->PropertyList; my $prop;
>                         foreach $prop(@props){
>                         $res->{$prop->Name}=$result->Property( $prop->Name );
>                         }
>                 push (@swish_return,$res);
>                 $i++;
> }

Seems very unlikely, but I wonder if the undef are somehow causing
problems in the serialization.  What if you do:

            my %res;
            for my $prop ( @props );
                my $name = $prop->Name;
                my $prop_value = $result->Property( $name );
                next unless $prop_value;
                $res{ $name } = $prop_value;
            push @swish_return, \%res;

Again, I can't imagine why that could would work any differently.

I tried locating the source of those messages in SOAP::Lite, but
didn't find it.

I'd probably install carp and have it do a back trace (via a
$SIG{__DIE__} handler) and take a closer look at the data at the point
of the error.  Oh, not sure that will work, either, as it seems
$SIG{__DIE__} is localized in places.

Another thing I might try (stabbing in the dark) is to serialize the
object with, say, Storable or Data::Dumper and then work on the
problem outside of any of your search code.  Might give you some hints
of where to look next.

Bill Moseley

Unsubscribe from or help with the swish-e list:

Help with Swish-e:
Received on Mon Jan 24 15:47:10 2005