[omniORB] JacORB + OmniORB = problems?
Duncan Grisby
dgrisby@uk.research.att.com
Fri, 25 Feb 2000 18:38:24 +0000
On Friday 25 February, Alexander Korobov wrote:
> I'm trying to link my java server and c++ clients through corba.
> I use JacORB1.0b15 and omniOrb. I tried both omniORB 2.8.0 and 3.0pre2.
> first, my c++ server and client do not work with JacORB nameserver.
> so i had to use omniNames.
In what way do they fail? Do they by any chance fail with the same
sort of error you report below?
[...]
> omniORB: LocateRequest to remote:
> key<0x5374616e64617274496d706c4e616d652f000f420b4332323302191e>
> ll_send: 48 bytes
> 4749 4f50 0100 0103 2400 0000 0100 0000 GIOP....$.......
> 1c00 0000 5374 616e 6461 7274 496d 706c ....StandartImpl
> 4e61 6d65 2f00 0f42 0b43 3232 3302 191e Name/..B.C223...
> ll_recv: 20 bytes
> 4749 4f50 0100 0004 0000 0008 0000 0001 GIOP............
> 0000 0000 ....
> omniORB: throw OBJECT_NOT_EXIST from remoteIdentity.cc:220
This shows that when omniORB first contacts an object, it performs a
GIOP LocateRequest to ensure that the object is really alive. The log
shows that JacORB returns "UNKNOWN_OBJECT" to say that the object
doesn't exist, hence omniORB's OBJECT_NOT_EXIST exception.
Some ORBs don't support LocateRequest at all. It looks from the JacORB
log (which I snipped) as though it does support it to some extent, but
has a bug causing the NullPointerException. Pending a fix to JacORB,
you can probably make it work by using omniORB's
-ORBverifyObjectExistsAndType 0 command line argument.
HTH,
Duncan.
--
-- Duncan Grisby \ Research Engineer --
-- AT&T Laboratories Cambridge --
-- http://www.uk.research.att.com/~dpg1 --