Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4460346

ORB doesn't implement interop resolution 3857

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      beta2
    • CPU:
      generic
    • OS:
      generic
    • Verification:
      Not verified

      Description

      Interop resolution 3857

      http://cgi.omg.org/issues/java2idl-rtf.html#Issue3857

      says that in RMI-IIOP, a null referred to by an Object, Serializable, or Externalizable reference is encoded as an Any with the type code tk_abstract_interface, repository ID "IDL:omg.org/CORBA/AbstractBase:1.0", the name string "", and value of null abstract interface (encoded as a boolean discriminant of false followed by a long value of 0).

      When a spec compliant ORB sends such a beast, our current AnyImpl gets an ArrayIndexOutOfBounds exception.

      AnyImpl has an isStreamed array which is short two items -- tk_native and tk_abstract_interface.

      This bug was found as part of the Connectathon effort for JavaOne.

      IBM reported that they upgraded their ORB to fix this same problem by doing the following:

      1.add the missing entries to the is_streamed[ ] array as already noted,
      2.modify AnyImpl.extract_Value(), to accept a kind of _tk_abstract_interface,
      3.add a case statement inTCUtility.marshalIn() to handle an abstract interface using write_abstract_interface(),
      4.add a case statement in TCUtility.unmarshalIn() to handle an abstract interface using read_abstract_interface().

      In addition, our ORB must do the proper ORB versioning to maintain backwards compatibility with older JDKs.
      ********************************************************************************

      ###@###.### 2001-11-06

      Fix verified OK:
      - using build: j2sdk-1_4_0-beta3-bin-b84-solsparc-20_oct_2001
      - by inspecting code at:com/sun/corba/se/internal/corba/AnyImpl.java
                              com/sun/corba/se/internal/corba/TCUtility.java
                              com/sun/corba/se/internal/corba/TypeCodeImpl.java
                              com/sun/corba/se/internal/iiop/ShutdownUtilDelegate.java
      ********************************************************************************

        Attachments

          Activity

            People

            Assignee:
            eandersosunw Everett Anderson (Inactive)
            Reporter:
            eandersosunw Everett Anderson (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: