0 Replies Latest reply on Dec 6, 2006 5:56 PM by bill_wrong

    Marshal exception returning an OracleCachedRowSet thru ejb i

    bill_wrong

      I have a very simple session bean which return an OracleCachedRowSet but on the client side, I got:

      Dec 6, 2006 2:41:51 PM com.sun.corba.se.impl.encoding.CDRInputStream_1_0 checkBlockLength
      WARNING: "IOP00800008: (MARSHAL) Not enough space left in current chunk"
      org.omg.CORBA.MARSHAL: vmcid: OMG minor code: 8 completed: No

      The session bean code is very simple:

      Statement stmt = DB.getStatement;
      ResultSet rs = stmt.executeQuery("select * from all_users");
      OracleCachedRowSet crs = new OracleCachedRowSet();
      crs.populate(rs);
      return crs;

      With the following interface:

      public javax.sql.RowSet testResultSet( java.lang.String dbType )
      throws java.rmi.RemoteException;

      With exactly the same code, it is working with jnp but once I used iiop it returned with exception. The bean is working fine with other interfaces which return either String or int.

      Here's the exception:

      Dec 6, 2006 2:41:51 PM com.sun.corba.se.impl.encoding.CDRInputStream_1_0 checkBlockLength
      WARNING: "IOP00800008: (MARSHAL) Not enough space left in current chunk"
      org.omg.CORBA.MARSHAL: vmcid: OMG minor code: 8 completed: No
      at com.sun.corba.se.impl.logging.OMGSystemException.rmiiiopOptionalDataIncompatible2(OMGSystemException.java:2709)
      at com.sun.corba.se.impl.logging.OMGSystemException.rmiiiopOptionalDataIncompatible2(OMGSystemException.java:2731)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.checkBlockLength(CDRInputStream_1_0.java:345)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_2.alignAndCheck(CDRInputStream_1_2.java:65)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_long(CDRInputStream_1_0.java:478)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.readValueTag(CDRInputStream_1_0.java:1622)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:946)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:879)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:249)
      at com.sun.corba.se.impl.corba.TCUtility.unmarshalIn(TCUtility.java:269)
      at com.sun.corba.se.impl.corba.AnyImpl.read_value(AnyImpl.java:559)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_any(CDRInputStream_1_0.java:739)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_any(CDRInputStream.java:220)
      at com.sun.corba.se.impl.javax.rmi.CORBA.Util.readAny(Util.java:401)
      at javax.rmi.CORBA.Util.readAny(Util.java:92)
      at com.sun.corba.se.impl.io.ValueHandlerImpl.read_Array(ValueHandlerImpl.java:657)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1989)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2213)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1221)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1989)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2213)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1221)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at org.jboss.iiop.rmi.marshal.CDRStream$ValuetypeReader.read(CDRStream.java:760)
      at org.jboss.iiop.rmi.marshal.strategy.StubStrategy.readRetval(StubStrategy.java:226)
      at org.jboss.proxy.ejb.DynamicIIOPStub.invoke(DynamicIIOPStub.java:128)
      at org.myCompany.interfaces._Server_Stub.testResultSet(Unknown Source)
      at org.myCompany.util.ConnectTest.testEJB(ConnectTest.java:244)
      at org.myCompany.util.ConnectTest.(ConnectTest.java:71)
      at org.myCompany.util.ConnectTest.main(ConnectTest.java:291)
      ERROR: Could not connect: java.rmi.MarshalException: CORBA MARSHAL 1330446344 No; nested exception is:
      org.omg.CORBA.MARSHAL: vmcid: OMG minor code: 8 completed: No
      java.rmi.MarshalException: CORBA MARSHAL 1330446344 No; nested exception is:
      org.omg.CORBA.MARSHAL: vmcid: OMG minor code: 8 completed: No
      at com.sun.corba.se.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:197)
      at javax.rmi.CORBA.Util.mapSystemException(Util.java:67)
      at org.jboss.proxy.ejb.DynamicIIOPStub.invoke(DynamicIIOPStub.java:150)
      at org.myCompany.interfaces._Server_Stub.testResultSet(Unknown Source)
      at org.myCompany.util.ConnectTest.testEJB(ConnectTest.java:244)
      at org.myCompany.util.ConnectTest.(ConnectTest.java:71)
      at org.myCompany.util.ConnectTest.main(ConnectTest.java:291)
      Caused by: org.omg.CORBA.MARSHAL: vmcid: OMG minor code: 8 completed: No
      at com.sun.corba.se.impl.logging.OMGSystemException.rmiiiopOptionalDataIncompatible2(OMGSystemException.java:2709)
      at com.sun.corba.se.impl.logging.OMGSystemException.rmiiiopOptionalDataIncompatible2(OMGSystemException.java:2731)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.checkBlockLength(CDRInputStream_1_0.java:345)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_2.alignAndCheck(CDRInputStream_1_2.java:65)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_long(CDRInputStream_1_0.java:478)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.readValueTag(CDRInputStream_1_0.java:1622)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:946)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:879)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:249)
      at com.sun.corba.se.impl.corba.TCUtility.unmarshalIn(TCUtility.java:269)
      at com.sun.corba.se.impl.corba.AnyImpl.read_value(AnyImpl.java:559)
      at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_any(CDRInputStream_1_0.java:739)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_any(CDRInputStream.java:220)
      at com.sun.corba.se.impl.javax.rmi.CORBA.Util.readAny(Util.java:401)
      at javax.rmi.CORBA.Util.readAny(Util.java:92)
      at com.sun.corba.se.impl.io.ValueHandlerImpl.read_Array(ValueHandlerImpl.java:657)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1989)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2213)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1221)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1989)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:2213)
      at com.sun.corba.se.impl.io.IIOPInputStream.inputObject(IIOPInputStream.java:1221)
      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 com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
      at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
      at org.jboss.iiop.rmi.marshal.CDRStream$ValuetypeReader.read(CDRStream.java:760)
      at org.jboss.iiop.rmi.marshal.strategy.StubStrategy.readRetval(StubStrategy.java:226)
      at org.jboss.proxy.ejb.DynamicIIOPStub.invoke(DynamicIIOPStub.java:128)
      ... 4 more