Topic
  • 30 replies
  • Latest Post - ‏2012-01-11T07:19:21Z by acmohan
SystemAdmin
SystemAdmin
1215 Posts

Pinned topic Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

‏2004-06-08T02:54:09Z |
Dear friends,

I'm using WSAD5.1.1 to develop a Session Bean. In side it, there is a method
which will return a WDO DataObject. When call from EJB Local Interface,
everything is ok. But when call from EJB Remote Interface, I got following
exception:

java.rmi.MarshalException: CORBA MARSHAL 0x4942f896 No; nested exception
is:
org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : null
vmcid: IBM minor code: 896 completed: No
at
com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java
:198)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:83)
at com.ibm.rmi.util.ProxyUtil.copyObject(ProxyUtil.java:463)
at com.ibm.CORBA.iiop.UtilDelegateImpl.copyObject(UtilDelegateImpl.java:789)
at javax.rmi.CORBA.Util.copyObject(Util.java:332)
at
com.ibm.cigna.addRequest.session._AddRequestService_Stub.findData(_AddReques
tService_Stub.java:480)
Since I'm using EJB client to test it, I think the client and server use
same JVM. I also check the WDO DataObject and make sure it is serializable.
The test server that I'm using is WAS 5.1 test environment.

I'm almost crazy for this problem since I can do nothing now.

Any suggestion will be great help for me.

Thank you in advance.

Updated on 2012-01-11T07:19:21Z at 2012-01-11T07:19:21Z by acmohan
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-06-24T12:09:46Z  
    I have exactly the same problem. I'm trying to access EJBs from remote clients. I have this problem also when I'm trying to access an EJB from inside of the WebSphere (another EJB), with the difference that the minor code is then 89A instead of 896.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-07-23T06:25:11Z  
    I have exactly the same problem. I'm trying to access EJBs from remote clients. I have this problem also when I'm trying to access an EJB from inside of the WebSphere (another EJB), with the difference that the minor code is then 89A instead of 896.
    I also encountered the same problem when trying to call an remote EJB's method. the minor code is 896. I am using WSAD 5.1.2 and testing on the integrated test server of version 5.1.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-07-30T16:21:02Z  
    I also encountered the same problem when trying to call an remote EJB's method. the minor code is 896. I am using WSAD 5.1.2 and testing on the integrated test server of version 5.1.
    I also have same problem. Calling remote CMP EJB custom finder mathod from a Java client program. WAS version is WAS 5.1. Your help is appreciated
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-08-11T21:43:50Z  
    I also have same problem. Calling remote CMP EJB custom finder mathod from a Java client program. WAS version is WAS 5.1. Your help is appreciated
    I have the same problem using WSAD IE 5.1.0. Strange thing is the method I am calling actually completes its task other than returning. My method inserts a row in a db table...and I see it after I get the exception.

    Must mean the problem is on the return. Has anyone opened a PMR on this? Any help appreciated.

    Thanks Tim
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-08-13T12:39:45Z  
    I was getting a similar error. In my case the error came on my second attempt to access the EJB Service. The first call was causing a MarhalException caused by a NotSerializableException. This was because one of the objects I was returning was not implementing the Serializable interface. On the second attempt, I got the same or similar MarsalException, that you are getting. Not sure if my problem is the same as yours. But I hope this info helps.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-08-13T13:45:27Z  
    I was getting a similar error. In my case the error came on my second attempt to access the EJB Service. The first call was causing a MarhalException caused by a NotSerializableException. This was because one of the objects I was returning was not implementing the Serializable interface. On the second attempt, I got the same or similar MarsalException, that you are getting. Not sure if my problem is the same as yours. But I hope this info helps.
    If you enable ORB tracing then you can see whats happening. Most cases its an exception during serialization.
    How to enable ORB tracing you ask?
    • expand Troubleshooting -> Logs and Trace -> <your_server> -> Diagnostic Trace

    • make sure Enable Trace is checked

    • for Trace Specification, enter:

    ORBRas=all=enabled:com.ibm.ejs.containter.*=all=enabled:com.ibm.ws.webcontainer.*=all=enabled

    • make sure that File is selected for Trace Output and that a file name is specified

    • click OK

    • expand Servers -> Application Servers -> <your_server> -> ORB Service

    • check the ORB Trace check box

    • click OK and save the changes

    • restart the server and run the test

    ---
    Cheers
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-08-17T07:58:36Z  
    I have the same problem using WSAD IE 5.1.0. Strange thing is the method I am calling actually completes its task other than returning. My method inserts a row in a db table...and I see it after I get the exception.

    Must mean the problem is on the return. Has anyone opened a PMR on this? Any help appreciated.

    Thanks Tim
    Hello, I met the same case with WSAD 5.1.1 and WAS 5.1. For me the problem was that I had a bean with serialisable interface used by servlet and EJB, and his array of paradigm didn't contain a possible value. When the case of this value appended, I had the following exception from the readResolve object:
    java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
    java.rmi.MarshalException: CORBA MARSHAL 0x4942f896 No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : null vmcid: IBM minor code: 896 completed: No
    at com.ibm.CORBA.iiop.UtilDelegateImpl.wrapException(UtilDelegateImpl.java:690)
    at javax.rmi.CORBA.Util.wrapException(Util.java:295)
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-09-02T11:12:00Z  
    If you enable ORB tracing then you can see whats happening. Most cases its an exception during serialization.
    How to enable ORB tracing you ask?
    • expand Troubleshooting -> Logs and Trace -> <your_server> -> Diagnostic Trace

    • make sure Enable Trace is checked

    • for Trace Specification, enter:

    ORBRas=all=enabled:com.ibm.ejs.containter.*=all=enabled:com.ibm.ws.webcontainer.*=all=enabled

    • make sure that File is selected for Trace Output and that a file name is specified

    • click OK

    • expand Servers -> Application Servers -> <your_server> -> ORB Service

    • check the ORB Trace check box

    • click OK and save the changes

    • restart the server and run the test

    ---
    Cheers
    some of you could probably set the following system.parameter:
    -Dcom.ibm.CORBA.FragmentSize=0

    http://www-106.ibm.com/developerworks/java/jdk/aix/14/sdkguide.aix32.htm
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-09-29T16:19:07Z  
    some of you could probably set the following system.parameter:
    -Dcom.ibm.CORBA.FragmentSize=0

    http://www-106.ibm.com/developerworks/java/jdk/aix/14/sdkguide.aix32.htm
    I did all the possibilities mentione in this thread. I still get the same error

    java.rmi.MarshalException: CORBA MARSHAL 0x4942f896 No; nested exception is: org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge

    Does any one have a fix for this problem? Your help is greatly appriciated

    Regards,
    Harsha
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-10-08T07:36:43Z  
    > Dear friends,
    >
    > I'm using WSAD5.1.1 to develop a Session Bean. In
    > side it, there is a method
    > which will return a WDO DataObject. When call from
    > EJB Local Interface,
    > everything is ok. But when call from EJB Remote
    > Interface, I got following
    > exception:
    >
    > java.rmi.MarshalException: CORBA MARSHAL 0x4942f896
    > No; nested exception
    > is:
    > org.omg.CORBA.MARSHAL: Unable to read value from
    > underlying bridge : null
    > vmcid: IBM minor code: 896 completed: No
    > at
    > com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException
    > UtilDelegateImpl.java
    > :198)
    > at
    > javax.rmi.CORBA.Util.mapSystemException(Util.java:83)
    > at
    > com.ibm.rmi.util.ProxyUtil.copyObject(ProxyUtil.java:4
    > 3)
    > at
    > com.ibm.CORBA.iiop.UtilDelegateImpl.copyObject(UtilDel
    > gateImpl.java:789)
    > at javax.rmi.CORBA.Util.copyObject(Util.java:332)
    > at
    > com.ibm.cigna.addRequest.session._AddRequestService_St
    > b.findData(_AddReques
    > tService_Stub.java:480)
    >
    >
    > Since I'm using EJB client to test it, I think the
    > client and server use
    > same JVM. I also check the WDO DataObject and make
    > sure it is serializable.
    > The test server that I'm using is WAS 5.1 test
    > environment.
    >

    I have a stateless session bean with a method that return an Throwable. The method at runtime return a class that derives from Throwable, Exception, etc...
    When the mothod return a my Exception object I get the same problem. My Exception implements the tag interface Serializable.
    I realize that the jar containing my Exception class was not in the runtime classpath of the application that call the remote interface of th EJB.
    So, I put the jar in the classpath and I resolve the problem. The strange thing is that the JVM in this case doesn't throw a ClassNotFoundException, but the error of subject of this message.

    I hope this message helps you and I apologize for my bad english.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-11-12T13:03:24Z  
    If you enable ORB tracing then you can see whats happening. Most cases its an exception during serialization.
    How to enable ORB tracing you ask?
    • expand Troubleshooting -> Logs and Trace -> <your_server> -> Diagnostic Trace

    • make sure Enable Trace is checked

    • for Trace Specification, enter:

    ORBRas=all=enabled:com.ibm.ejs.containter.*=all=enabled:com.ibm.ws.webcontainer.*=all=enabled

    • make sure that File is selected for Trace Output and that a file name is specified

    • click OK

    • expand Servers -> Application Servers -> <your_server> -> ORB Service

    • check the ORB Trace check box

    • click OK and save the changes

    • restart the server and run the test

    ---
    Cheers
    Hello,
    We have the same problem using WSAD IE 5.1 and an IE 5.1 test server in the WTE, and the trace shows a ClassNotFoundException for the EJB bean class!?
    The scenario is:
    • EJB E is in EAR project A1
    • A1 consists of:
    - the EJB project
    - an EJB client project
    • Servlet S is in EAR project A2
    • A2 references as project utility jar:
    - the EJB client project
    • Both EARs, A1 and A2, are deployed to the same server.
    • Servlet S calls EJB E
    • Getting the home interface works fine.
    • Getting the metadata (ejbHome.getEJBMetaData()) doesn't work.

    This works, if A2 also references as project utility jar the EJB project, which shouldn't be required, should it?

    Thanks in advance for any help!
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-11-16T06:11:54Z  
    Hello, I met the same case with WSAD 5.1.1 and WAS 5.1. For me the problem was that I had a bean with serialisable interface used by servlet and EJB, and his array of paradigm didn't contain a possible value. When the case of this value appended, I had the following exception from the readResolve object:
    java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
    java.rmi.MarshalException: CORBA MARSHAL 0x4942f896 No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : null vmcid: IBM minor code: 896 completed: No
    at com.ibm.CORBA.iiop.UtilDelegateImpl.wrapException(UtilDelegateImpl.java:690)
    at javax.rmi.CORBA.Util.wrapException(Util.java:295)
    Good Day,

    I getting the same error when calling a Session Bean that hase method with the following signature

    public void doSomeWork(Collection items) {
    //do something
    }

    The items in the collection implement Serializable.

    java.rmi.MarshalException: CORBA MARSHAL 0x4942f89a No; nested exception is:
    org.omg.CORBA.MARSHAL:

    Trace from server: 1198777258 at host localhost >>
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:java.util.ArrayList:F655154F32815380:7881D21D99C7619D) = 7881D21D99C7619D whereas Target (Rep. ID RMI:com.domain.SomeTO:434B6727D8EE661F:29F4F7A063A69853) = 29F4F7A063A69853 vmcid: IBM minor code: 89A completed: No
    at com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1764)
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2004-12-10T08:40:45Z  
    This problem occurs when you try to read from a EJB with a standalone client.

    There at at least two causes for this:

    1.) Either some class in your Bean interface is not serializable
    or
    2.) By using a JRE "incompatible" with WAS JRE when running your app with eclipse. ie. any other JRE than the WAS runs with...
    You can correct these by
    1.) checking your interface for unserializable classes, and classpath for any references for wrong version of the classes in the interface

    2.) Add the WAS JRE to eclipse and use it as a default JRE
    2.1) Select Window -> Preferences and JAVA -> Installed JRE's
    2.2) Add {YOUR_WAS_HOME}/java/jre set it as a default

  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2005-01-15T14:20:06Z  
    This problem occurs when you try to read from a EJB with a standalone client.

    There at at least two causes for this:

    1.) Either some class in your Bean interface is not serializable
    or
    2.) By using a JRE "incompatible" with WAS JRE when running your app with eclipse. ie. any other JRE than the WAS runs with...
    You can correct these by
    1.) checking your interface for unserializable classes, and classpath for any references for wrong version of the classes in the interface

    2.) Add the WAS JRE to eclipse and use it as a default JRE
    2.1) Select Window -> Preferences and JAVA -> Installed JRE's
    2.2) Add {YOUR_WAS_HOME}/java/jre set it as a default

    I also got this exception a lot of time.
    In my case I can solve the problem replicable by the following:
    I have had also made changes in my EJB Project by adding and removing EJB Clients Projects. After that my application did not work any longer. I tried a lot of things - like changing JVM and refreshing the RMI code - but nothing happend.
    So I found out that the solution was a "old" binding of my EJB from my WebApp. So I removed the EJB Reference in my WebApp and then create a New one - and everything works perfect again.
    ok it sound a little bit crazy but maybe this could be helpful for someone
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2005-05-25T08:59:48Z  
    Had the same problem and it was a missing class! unfortunately I only could make this error visible with IBMs JDK after making sure the class is available, I switched back to SUN JDK and it worked. I'm using a standalone client to my EJBs.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2005-08-11T16:47:51Z  
    I also encountered the same problem when trying to call an remote EJB's method. the minor code is 896. I am using WSAD 5.1.2 and testing on the integrated test server of version 5.1.
    Most likely the object that the remote ejb client trying to marshall is not serializable or the object has changed meaning you might have added or deleted data member from that object. I had the later problem. Hope this helps.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2005-09-02T23:36:31Z  
    Had the same problem and it was a missing class! unfortunately I only could make this error visible with IBMs JDK after making sure the class is available, I switched back to SUN JDK and it worked. I'm using a standalone client to my EJBs.

    • If the reference to the object that you was obtain are remote, you should sign your class, because you have 2 JVM in your netWork (Client/Server).
    When the object arrives to the Client or to the Server the UID of your class will be finded and if it´s not match into the jvm, an exception org.omg.CORBA.MARSHAL will be throw.

    To resolve this problem you should sign the Object that wraps the response:
    i.e.:
    public static final long serialVersionUID= -7766899538629136321L;

    The number -7766899538629136321L are random, and must be the same into the client and into the server jvm, you can code this line but must mantain the variable name serialVersionUID.

    If you test Client and server into the same machine you w´ll
    not have this problem, because all the operations resides in the same jvm.

    Best Regards

    Andrés H.Pityla Casalaspro.
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2005-11-08T04:00:51Z  
    Hi All,
    Please help me out with this problem
    When i run my application, i am getting the below error..

    java.rmi.MarshalException: CORBA MARSHAL 0x4942f896 No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : -32768 vmcid: IBM minor code: 896 completed: No

    Actually the screen i am running is a search screen, and retrives a lot of data.. if i give a search criteria which returns relatively less data.. i don not get this exception, but if i use a search criteia that returns too much data.. this error occurs..
    i have checked thew object i am using and all of them implemet the serializable interface.. Is there any solution to this problem?
  • SystemAdmin
    SystemAdmin
    1215 Posts

    added libraries, being happy now!

    ‏2006-08-09T12:16:20Z  
    Thanks guys, you helped me alot!

    I got the 896 ibm code, as well. And my external ibm collegues coundn't recall what it meant :-)

    However, for me it was enough to add all libs necessary at runtime to the caller's jar-dependencies. And there have been some surprises.

    Cheers, Traui

    // Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2006-09-18T08:01:09Z  
    hi all
    the solution is soo easy if u have the problem of mismach UIDs then allyou have to do is copy the classes inside the collection or whatever new classes made and beeing send to the client to the client and the problem will be solved
    wish u all luck
  • Craig1971
    Craig1971
    1 Post

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2007-07-13T14:21:36Z  
    FYI, I saw this error when trying to connect to ITIM when the ITIM Manager User account used to connect was inactive. Re-storing the account resolved the issue.

    2007-07-13 08:55:20,108 ERROR Servlet.Engine.Transports : 1 TivoliIdentityManager - Failed to communicate with ITIM(login)
    javax.security.auth.login.LoginException: CORBA MARSHAL 0x4942f89a No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Mismatched serialization UIDs : Source (Rep. IDRMI:java.lang.Throwable:F8678B4F4D2EB705:D5C635273977B8CB) = D5C635273977B8CB whereas Target (Rep. ID RMI:com.ibm.itim.authentication.AuthenticationFailedException:2E921E9DEB124A7F:168F540848D19B99) = 168F540848D19B99 vmcid: IBM minor code: 89A completed: No
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2007-07-26T12:08:37Z  
    An exception like this occured for me in the following cases:

    1) If I had different serialversionuids in the server and the client side.
    2) If the class to be transferred was not serializable
    3) If the class to be transferred was not loadable on the receiver side (this generally needs adding some jars to one side).
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2007-09-20T09:51:35Z  
    Hi all,
    I am facing the same problem. But in my case i am able on kind of serialized of class object, when i am trying to return another serialized class object the following exception is coming. Both plain java classes and are serialized. I didn't understand what's going wrong. I am struggling with this problem from last one month.
    I already posted this problem in the same form
    http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=266&thread=175419&cat=9

    java.rmi.MarshalException: CORBA MARSHAL 0x4942f89a No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 89A completed: No
    at com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java:207)
    at javax.rmi.CORBA.Util.mapSystemException(Util.java:84)
    at com.att.erp.ejb.session._ICSSession_Stub.requestReport(_ICSSession_Stub.java:337)
    at com.att.cc.common.xrc.client.XRCMainFrame.getReport(XRCMainFrame.java:1164)
    at com.att.cc.common.xrc.client.XRCMainFrame$2.run(XRCMainFrame.java:534)
    Caused by: org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 89A completed: No
    at com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1975)
    at com.att.erp.ejb.session._ICSSession_Stub.requestReport(_ICSSession_Stub.java:323)
    ... 2 more
    Caused by: org.omg.CORBA.MARSHAL: Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 8C1 completed: Maybe
    at com.ibm.rmi.iiop.Connection.getNextFragment(Connection.java:2081)
    at com.ibm.rmi.iiop.IIOPInputStream.getNextBuffer(IIOPInputStream.java:378)
    at com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.java:649)
    at com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.java:580)
    at com.ibm.rmi.iiop.CDRInputStream.skipToEndOfChunk(CDRInputStream.java:1934)
    at com.ibm.rmi.iiop.CDRInputStream.skipToEndOfValue(CDRInputStream.java:1899)
    at com.ibm.rmi.iiop.CDRInputStream.post_fast_read_value(CDRInputStream.java:1675)
    at com.ibm.rmi.io.IIOPInputStream.doPostReadProcessing(IIOPInputStream.java:1922)
    at com.ibm.rmi.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:285)
    at com.ibm.rmi.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:524)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
    at java.util.HashMap.readObject(HashMap.java:1094)
    at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:615)
    at com.ibm.rmi.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1610)
    at com.ibm.rmi.io.IIOPInputStream.inputObjectUsingClassDesc(IIOPInputStream.java:1344)
    at com.ibm.rmi.io.IIOPInputStream.inputObjectClassDesc(IIOPInputStream.java:1319)
    at com.ibm.rmi.io.IIOPInputStream.readSerializable(IIOPInputStream.java:1048)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObjectInternal(IIOPInputStream.java:325)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObjectLoop(IIOPInputStream.java:402)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:356)
    at com.ibm.rmi.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:201)
    at com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1957)
    ... 3 more
  • SystemAdmin
    SystemAdmin
    1215 Posts

    Re: Need Help for "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" problem

    ‏2007-09-27T15:41:12Z  
    Hi all,
    I am facing the same problem. But in my case i am able on kind of serialized of class object, when i am trying to return another serialized class object the following exception is coming. Both plain java classes and are serialized. I didn't understand what's going wrong. I am struggling with this problem from last one month.
    I already posted this problem in the same form
    http://www-128.ibm.com/developerworks/forums/dw_thread.jsp?forum=266&thread=175419&cat=9

    java.rmi.MarshalException: CORBA MARSHAL 0x4942f89a No; nested exception is:
    org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 89A completed: No
    at com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java:207)
    at javax.rmi.CORBA.Util.mapSystemException(Util.java:84)
    at com.att.erp.ejb.session._ICSSession_Stub.requestReport(_ICSSession_Stub.java:337)
    at com.att.cc.common.xrc.client.XRCMainFrame.getReport(XRCMainFrame.java:1164)
    at com.att.cc.common.xrc.client.XRCMainFrame$2.run(XRCMainFrame.java:534)
    Caused by: org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge : Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 89A completed: No
    at com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1975)
    at com.att.erp.ejb.session._ICSSession_Stub.requestReport(_ICSSession_Stub.java:323)
    ... 2 more
    Caused by: org.omg.CORBA.MARSHAL: Request 17:read beyond end of data. No fragments available. vmcid: IBM minor code: 8C1 completed: Maybe
    at com.ibm.rmi.iiop.Connection.getNextFragment(Connection.java:2081)
    at com.ibm.rmi.iiop.IIOPInputStream.getNextBuffer(IIOPInputStream.java:378)
    at com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.java:649)
    at com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.java:580)
    at com.ibm.rmi.iiop.CDRInputStream.skipToEndOfChunk(CDRInputStream.java:1934)
    at com.ibm.rmi.iiop.CDRInputStream.skipToEndOfValue(CDRInputStream.java:1899)
    at com.ibm.rmi.iiop.CDRInputStream.post_fast_read_value(CDRInputStream.java:1675)
    at com.ibm.rmi.io.IIOPInputStream.doPostReadProcessing(IIOPInputStream.java:1922)
    at com.ibm.rmi.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:285)
    at com.ibm.rmi.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:524)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
    at java.util.HashMap.readObject(HashMap.java:1094)
    at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:615)
    at com.ibm.rmi.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1610)
    at com.ibm.rmi.io.IIOPInputStream.inputObjectUsingClassDesc(IIOPInputStream.java:1344)
    at com.ibm.rmi.io.IIOPInputStream.inputObjectClassDesc(IIOPInputStream.java:1319)
    at com.ibm.rmi.io.IIOPInputStream.readSerializable(IIOPInputStream.java:1048)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObjectInternal(IIOPInputStream.java:325)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObjectLoop(IIOPInputStream.java:402)
    at com.ibm.rmi.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:356)
    at com.ibm.rmi.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:201)
    at com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1957)
    ... 3 more
    I had same problem and following action fixed problem:

    I was using some internal-common library in EJB external client, that contained class that was result of EJB method. I had this internal-common project in classpath of my run target (Application Client). If I removed it from this classpath I received java.lang.NoClassDefError. All code was compiled without any problems and I could also call EJB method, that contained some parameter and returned string (e.g. helloWorld).

    But when I tried to execute EJB method, that returned object from internal-common, exception "org.omg.CORBA.MARSHAL: Unable to read value from underlying bridge" was thrown.

    Solution in my case:
    I added internal-common library to clientEAR utility jar and selected internal-common as J2EE module (Properties->J2EE modules) in project client (external client).

    I hope it helps.