Skip to main content

IZ69867: MARSHAL EXCEPTION WHEN USING CUSTOM STREAMS


Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Error Message: Colocated invocations of EJB methods failed with
    MARSHAL exception when the parameters were custom marshalled
    using custom streams extending from java.io.ObjectStreams
    Caused by: org.omg.CORBA.MARSHAL: No available data: Read beyond
    end of input stream  vmcid: OMG  minor code: 8 completed: Maybe
     at
    com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.jav
    a:829)
    .
    Stack Trace: java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:79)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:43)
     at java.lang.reflect.Method.invoke(Method.java:618)
     at
    com.ibm.rmi.io.IIOPInputStream.invokeObjectReader(IIOPInputStrea
    m.java:1700)
     at
    com.ibm.rmi.io.IIOPInputStream.inputObjectUsingClassDesc(IIOPInp
    utStream.java:1436)
     at
    com.ibm.rmi.io.IIOPInputStream.inputObjectClassDesc(IIOPInputStr
    eam.java:1411)
     at
    com.ibm.rmi.io.IIOPInputStream.readSerializable(IIOPInputStream.
    java:1140)
     at
    com.ibm.rmi.io.IIOPInputStream.simpleReadObjectInternal(IIOPInpu
    tStream.java:409)
     at
    com.ibm.rmi.io.IIOPInputStream.simpleReadObject(IIOPInputStream.
    java:445)
     at
    com.ibm.rmi.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:
    209)
     at
    com.ibm.rmi.iiop.CDRInputStream.read_value(CDRInputStream.java:1
    662)
     at com.ibm.rmi.util.ProxyUtil.copyObject(ProxyUtil.java:459)
     at
    com.ibm.rmi.util.ProxyUtil.invokeWithClassLoaders(ProxyUtil.java
    :763)
     at
    com.ibm.CORBA.iiop.ClientDelegate.invoke(ClientDelegate.java:116
    0)
     at $Proxy8.getWeitereVersicherungsnehmer(Unknown Source)
     at com.a.b._Test_stub.remoteMethod(_Test_Stub.java:715)
     ..
    Caused by: java.io.OptionalDataException
     at
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
    Method)
     at
    sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeCons
    tructorAccessorImpl.java:67)
     at
    sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Delega
    tingConstructorAccessorImpl.java:45)
     at
    java.lang.reflect.Constructor.newInstance(Constructor.java:522)
     at
    com.ibm.rmi.io.IIOPInputStream$3.run(IIOPInputStream.java:2510)
     at
    java.security.AccessController.doPrivileged(AccessController.jav
    a:246)
     at
    com.ibm.rmi.io.IIOPInputStream.getOptionalDataException(IIOPInpu
    tStream.java:2505)
     at
    com.ibm.rmi.io.IIOPInputStream.readObjectDelegate(IIOPInputStrea
    m.java:377)
     at
    com.ibm.rmi.io.IIOPInputStream.readObjectOverride(IIOPInputStrea
    m.java:618)
     at
    java.io.ObjectInputStream.readObject(ObjectInputStream.java:359)
     at java.util.ArrayList.readObject(ArrayList.java:617)
     ... 37 more
    Caused by: org.omg.CORBA.MARSHAL: No available data: Read beyond
    end of input stream  vmcid: OMG  minor code: 8 completed: Maybe
     at
    com.ibm.rmi.iiop.CDRInputStream.alignAndCheck(CDRInputStream.jav
    a:829)
     at
    com.ibm.rmi.iiop.CDRInputStream.read_long(CDRInputStream.java:10
    15)
     at
    com.ibm.rmi.iiop.CDRInputStream.readBytesForString(CDRInputStrea
    m.java:1066)
     at
    com.ibm.rmi.iiop.CDRInputStream.readStringOrIndirection(CDRInput
    Stream.java:1150)
     at
    com.ibm.rmi.iiop.CDRInputStream.read_string(CDRInputStream.java:
    1162)
     at com.ibm.rmi.IOR.read(IOR.java:335)
     at
    com.ibm.rmi.iiop.CDRInputStream.read_Object(CDRInputStream.java:
    1347)
     at
    com.ibm.rmi.iiop.CDRInputStream.fast_read_abstract_interface(CDR
    InputStream.java:1960)
     at
    com.ibm.rmi.iiop.CDRInputStream.fast_read_abstract_interface(CDR
    InputStream.java:1948)
     at
    com.ibm.rmi.io.IIOPInputStream.readObjectDelegate(IIOPInputStrea
    m.java:352)
     ... 40 more
    .
    

Local fix

  • force invocations to go over the wire by deploying ejbs with
    rmic -nolocalstubs option
    

Problem summary

  • For colocated invocations, the custom stream format used is 1
    which does not support enclosures.The bug was in the resetting
    these enclosures for custom streams as the customer's.
    

Problem conclusion

  • This defect will be fixed in:
    5.0.0 SR12
    6.0.0 SR6
    .
    ORB has been fixed for handling this bug in custom data
    marshalling with stream format 1.
    .
    To obtain the fix:
    Install build 20100431 or later
    

Temporary fix

Comments

APAR Information

  • APAR number

    IZ69867

  • Reported component name

    JAVA 5 ORB

  • Reported component ID

    620500123

  • Reported release

    500

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-02-11

  • Closed date

    2010-04-30

  • Last modified date

    2010-04-30

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    IX90047

Fix information

  • Fixed component name

    JAVA 5 ORB

  • Fixed component ID

    620500123

Applicable component levels

  • R500 PSN

       UP

Rate this page:

(0 users)Average rating

Copyright and trademark information

IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.

Rate this page:


(0 users)Average rating

Add comments

Document information

Runtimes for Java Technology

ORB


Software version:
5.0


Reference #:
IZ69867


Modified date:
2010-04-30

Translate my page

Content navigation