[Net-z3950] (no subject)

Edward G Boyle edward.boyle at ed.ac.uk
Fri Aug 23 18:18:58 CEST 2002


Wonder if anyone can shed light on this - I have a very simple 
Net::Z3950 client which works well, but with some Ztargets it bombs out with an 
error if I try to display a record. This seems to happen with targets running 
Isite server software. The code is:

use Net::Z3950;
$conn = new Net::Z3950::Connection
('geolib.nkw.ac.uk', 6668, databaseName => 'BGSDiscMdatadb');
$rs = $conn->search('@attr 1=1035 water') or die $conn->errmsg();
$rs->option(preferredRecordSyntax => Net::Z3950::RecordSyntax::GRS1);
$rs->option(elementSetName => "b");
print "Found ", $rs->size(), " records\n";
$rec = $rs->record(1) or die $rs->errmsg();
print $rec->render();

-This finds 20 records OK at the target, but trying to display the first record 
gives the (v. useful!) error message:

Event: trapped error: rs 'init' was sent records for '' 
at /blah/blah/ResultSet.pm line 324.
  in Event::io=HASH(0x23a5e8) --
              poll: 'r'
                fd: 'IO::Handle=GLOB(0x23a51c)'
           timeout: 0
        timeout_cb: <undef>
                cb: 'CODE(0x1bf13c)'
            cbtime: 1030118847.53708
              desc: '?? Connection.pm:134'
             debug: ''
              prio: 4
         reentrant: 1
            repeat: 1
         max_cb_tm: 1

I know the record is there as it comes up OK with Yaz, using the same 
parameters ('b', 'grs-1' etc.).

I'm using Net::Z3950 v0.30 and Yaz v1.8.7.

Eddie Boyle
Software Engineer
EDINA, Edinburgh University Data Library 
Main Library Building, George Square, Edinburgh EH8 9LJ 
Tel: +44 (0)131 651 3019 
Fax: +44 (0)131 650 3308 

More information about the Net-z3950 mailing list