[JDEV] Net::Jabber - XDB->GetData() returns undef?

Chris Searle jdev at chrissearle.org
Tue Aug 5 08:41:17 CDT 2003


Net::Jabber 1.0024 on debian stable.

Just starting in on XDB.

OK - I have jabberd sending jabber:iq:auth through to my perl
script. If I dump the incoming xdb object thus (the rest of the script
is cribbed almost directly from component_accept.pl):

sub xdbCB {
  my $sid = shift;
  my $xdb = shift;

  print Dumper($xdb);
}

I get:

$VAR1 = bless( {
                 'CHILDREN' => {},
                 'TAG' => 'xdb',
                 'DATA' => {
                             'id' => '62',
                             'type' => 'get',
                             'to' => bless( {
                                              'RESOURCE' => '',
                                              'JID' => 'chris at jabber.longship.org',
                                              'USERID' => 'chris',
                                              'VERSION' => '1.0024',
                                              'SERVER' => 'jabber.longship.org'
                                            }, 'Net::Jabber::JID' ),
                             'from' => bless( {
                                                'RESOURCE' => '',
                                                'JID' => 'sessions',
                                                'USERID' => '',
                                                'VERSION' => '1.0024',
                                                'SERVER' => 'sessions'
                                              }, 'Net::Jabber::JID' ),
                             'ns' => 'jabber:iq:auth'
                           },
                 'DEBUGHEADER' => 'XDB',
                 'VERSION' => '1.0024'
               }, 'Net::Jabber::XDB' );


So - it looks like data is there.

But - add the line:
  my $reply = $xdb->Reply(type=>"result");

and you get:

Can't call method "GetXMLNS" on an undefined value at /usr/share/perl5/Net/Jabber/XDB.pm line 392.

(the same happens if you call ->Reply() also).

line 392 is trying to call:

$reply->NewData($selfData->GetXMLNS());

where $selfData is the return from $self->GetData();

I also get undef if I try to access $xdb->GetData().

What have I missed? 

Thanks in advance

-- 
Chris Searle



More information about the JDev mailing list