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
moseley@hank.org
Unsubscribe from or help with the swish-e list:
http://swish-e.org/Discussion/
Help with Swish-e:
http://swish-e.org/current/docs
swish-e@sunsite.berkeley.edu
Received on Mon Jan 24 15:47:10 2005