[Biocorba-l] second report on Anys in perl ORBs
Martin Senger
senger@ebi.ac.uk
Fri, 15 Jun 2001 00:42:39 +0100 (BST)
I have done some more exploration of orbit and mico perl. Results are even
worse than my conclusion last time. [ I will be more than happy if
somebody finds that my experiments have some bug, perhaps caused by my
little knowledge of perl mapping, or whatsever. ]
1) Last time I have reported that I can use array of Anys in perl-orbit.
Unfortunately, later I found that even that is very limited, and it works
only sometimes. I even found that the result (success or failure) is
dependent on the contents of transmitted values (strings) in the anys
(!!!). For example, it worked for string "Hello, world" but failed with
string "Hello, world!". Terrific, isn'it?
2) So I have tried CORBA::MICO. The concept of this ORB is different from
perl-orbit. The perl client does not read the IDL file, but rather it
contacts an interface repository on the server side (so the server
provider has to run an IR and the application server).
In my test, it again worked if both client and server were perl-MICO.
But it did not work with MICO client and ORBacus server, at all. The
client got answer from interface repository (but that is no surprise
because the IR was a MICO program) but it failed immediately when the
first call was done to the server. The server (ORBacus) was contacted and
reported a java run-time error (null pointer exception) somewhere in
casses reading input (GIOP) stream. So it seems that MICO sends something
which is not interoperable with ORBacus.
Note that the MICO problem started even before touching any Anys. Just
by the first call. I did not find what I am doing badly...
3) Regarding the 'novella' project, I have temporaryly changed Anys to a
union with few types which I need to implement perl access to the AppLab.
After this change orbit-perl works fine - it's really Anys that suck. I am
working now on a real perl module BSA::Novella::Client and on 'novella'
documentation. After that I will come back to seek your comments and
opinions on the Novella IDL. But you can see it even now from the CVS
repository (I will commit latest changes on Friday morning BST - I cannot
commit it now from home).
Regards,
Martin
--
Martin Senger
EMBL Outstation - Hinxton Senger@EBI.ac.uk
European Bioinformatics Institute Phone: (+44) 1223 494636
Wellcome Trust Genome Campus (Switchboard: 494444)
Hinxton Fax : (+44) 1223 494468
Cambridge CB10 1SD
United Kingdom http://industry.ebi.ac.uk/~senger