[omniORB] problem with orbixweb and any's

J. Cameijo Cerdeira ariedrec@esoterica.pt
Fri, 08 Oct 1999 18:52:41 +0000


Hi,

i'm experiencing interoperability problems between orbixweb 3.2 (client)
and omniorb 2.7.1 (server) regarding the handling of anys. 
specifically i've got the following idl:

  struct MapDescriptor {
    string id;
    string name;
    sequence<string> layerIds;
    any clientData;
  };

  interface ClientManager {
    any test(in any data);
  };


method test is supposed to receive an any as an argument and returns
the same data.

now, things work properly when i code test() this way

CORBA::Any *PGraphClientManagerImpl::test(const CORBA::Any& data) {
  CORBA::Any *ndata = new CORBA::Any(data);
  return ndata;
}

but if i try to extract a MapDescriptor from the given argument
(this performs ok) and use operator <<= to insert it into a newly
created any type i got an ArrayIndexOutOfBounds java exception on the
client (orbix) side.

i've used MemBufferedStream to dump the received any and the constructed
one and they are indeed different, but i don't know whose fault it is.

i'd really appreciate some enlightenment on this problem since it is
hindering our current project.

mtia

J. Cameijo Cerdeira