[omniORB] Java client connect to OmniORB 4 server, error...
Marcus MacWilliam
marcusma@lsl.co.uk
Tue Sep 10 09:20:01 2002
Rainer Frohnhoefer wrote:
> Am Montag, 09.09.02 um 19:08 Uhr schrieb Marcus MacWilliam:
> [snip]
>
> CORBA initialisation exception: org.omg.CORBA.INV_OBJREF: minor code: 1398079490 completed: No
> org.omg.CORBA.INV_OBJREF: minor code: 1398079490 completed: No
> at com.sun.corba.se.internal.core.CodeSetComponentInfo.read(CodeSetComponentInfo.java:90)
> at com.sun.corba.se.internal.core.Profile.<init>(Profile.java:109)
> at com.sun.corba.se.internal.core.IOR.getProfile(IOR.java:273)
> at com.sun.corba.se.internal.iiop.CDRInputStream.read_Object(CDRInputStream.java:591)
> at com.sun.corba.se.internal.iiop.CDRInputStream.read_Object(CDRInputStream.java:577)
> at com.sun.corba.se.internal.corba.ORB.string_to_object(ORB.java:1070)
> at OoApiTest.getCORBAObject(OoApiTest.java:6853)
> at OoApiTest.main(OoApiTest.java:11054)
>
> Does anyone know why this has started happening. This code has worked
> with the following before:
>
> Client Server
> ------ ------
> JDK 1.2 and VisiBroker v3.3.3.
> JDK 1.2.2 and VisiBroker v3.3.4.
> JDK 1.3.1 and OmniORB v3.0.4.
> JDK 1.3.1 and OmniORB v3.0.5.
>
> Does OmniORB v4.0.b2 write the IOR in a completely different format? It is
> currently writing out the following:
>
> IOR:000000000000002449444c3a676f746869632f636f7265782f476f7468696344617461626173653a312e3000000000010000000000000070000102000000000d3139322e3136382e36302e3
> 30000a1ec00000019ff6f6f2d746f6f6c6b6974fe3d7cd1229312000100000000000000000000000200000000000000080000000041545400000000010000001c00000000000100010000000105
> 010001000101090000000100010109
>
> It's not the IOR's fault, or, at least, only partially. IIRC, the Java ORBs prior to version 1.4 had trouble handling IORs with embeded codeset info. It's been a while since I ran into this problem, but I think omniRB3 uses IIOP1.0 which doesn't have codeset info. omniORB4 'speaks' the newer version of the protocol. The rather brittle ORB that comes with JRE1.[23].x pretends to understand IIOP1.1 while he really doesn't and then chokes on the IOR.
>
> Can you upgrade to another ORB? Else, there might be an option in omniORB4 to switch back to IIOP1.0, which might help.
>
> If the above explanation was nonsense, forgive me. I ran into that problem some time ago, switched ORBs and happily forgot everythig about it :)
>
> Regards,
> Rainer.
Upgrading to J2SE (SDK) v1.4.0_02, solved the problem.
Thanks all,
--
Marcus A.T MacWilliam, MSc, CEng, MBCS, BSc(Hons).
Senior Software Engineer, Laser-Scan Ltd, Cambridge, CB4 0FY.
Tel: +44 (0)1223 420414 x213. Mobile: +44 (0)7803 706597.
TravelM8: 09050 505050 (http://www.travelm8.com)