Got an ORB exception with the Sun JDK 1.6/amd64 with a very simple standalone client which uses the MEJB
Got this following exception with a very simple standalone client which used the MEJB on the Sun JDK 1.6 on amd64 :
Caused by: org.omg.CORBA.MARSHAL: unknown value tag: 0x10100 (offset=0x2d0)
at org.jacorb.orb.CDRInputStream.read_value(CDRInputStream.java:2769)
at com.sun.corba.se.impl.io.ValueHandlerImpl.read_Array(ValueHandlerImpl.java:756)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:325)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:293)
at org.jacorb.util.ValueHandler.readValue(ValueHandler.java:25)
at org.jacorb.orb.CDRInputStream.read_untyped_value(CDRInputStream.java:2982)
at org.jacorb.orb.CDRInputStream.read_typed_value(CDRInputStream.java:3082)
at org.jacorb.orb.CDRInputStream.read_value(CDRInputStream.java:2761)
at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1995)
at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2220)
at com.sun.corba.se.impl.io.IIOPInputStream.defaultReadObjectDelegate(IIOPInputStream.java:584)
at com.sun.corba.se.impl.io.InputStreamHook.defaultReadObject(InputStreamHook.java:183)
at javax.management.MBeanInfo.readObject(MBeanInfo.java:669)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.corba.se.impl.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1700)
at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1218)
at com.sun.corba.se.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:400)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:327)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:293)
at org.jacorb.util.ValueHandler.readValue(ValueHandler.java:25)
at org.jacorb.orb.CDRInputStream.read_untyped_value(CDRInputStream.java:2982)
at org.jacorb.orb.CDRInputStream.read_typed_value(CDRInputStream.java:3082)
at org.jacorb.orb.CDRInputStream.read_value(CDRInputStream.java:2633)
at org.jacorb.orb.Any.read_value(Any.java:1315)
at org.jacorb.orb.CDRInputStream.read_any(CDRInputStream.java:708)
at com.sun.corba.se.impl.javax.rmi.CORBA.Util.readAny(Util.java:401)
at org.ow2.carol.util.delegate.UtilDelegateImpl.readAny(UtilDelegateImpl.java:285)
at javax.rmi.CORBA.Util.readAny(Util.java:92)
at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1923)
at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2220)
at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1227)
at com.sun.corba.se.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:400)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:327)
at com.sun.corba.se.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:293)
at org.jacorb.util.ValueHandler.readValue(ValueHandler.java:25)
at org.jacorb.orb.CDRInputStream.read_untyped_value(CDRInputStream.java:2982)
at org.jacorb.orb.CDRInputStream.read_typed_value(CDRInputStream.java:3082)
at org.jacorb.orb.CDRInputStream.read_value(CDRInputStream.java:2761)
... 18 more
Note that
- got the same problem with a Sun JDK 1.6.0_17 on ia32 and OpenJDK 1.6 on amd64
- upgrading jacorb from 2.2.3 to 2.3.1 doesn't fix this problem.
- cannot do a test with the IBM JDK 1.6 on amd64 due to another problem.
In attachment, a client to reproduce the problem. Just do:
- ant clean build
- jclient mejb-client.jar
(j2eetools/mgmt/api/mejb1/mejbClient1.java#testGetMBeanInfo1_from_ejb)