4.0.1, 4.0.2, 4.0.3; PQ63548: CORBA.MARSHAL
exceptions with interoperability
Downloadable files
Abstract
Inter-op problem found when passing embedded valueTypes
between WebSphere® Application Server releases
Download Description
USERS AFFECTED:
All WebSphere Application Server users who pass embedded valueType between
WebSphere Application Server releases.
PROBLEM DESCRIPTION:
Inter-op problem found when passing embedded valueTypes between WAS
releases.
User may experience org.omg.CORBA.MARSHAL exceptions. Note, that these
exceptions are sometimes masked by other exceptions in WAS or user
application code. Errors are sometimes hard
to identify.
It is strongly recommended that fixes are applied as soon as possible to
avoid future inter-op issues. The user may experience this problem even
after fixes have been applied, if the user has saved off his IORs. If this
is the case, the user needs to re-export those IORs for the fixes to take
their full effect.
Known affected combinations
V3.5 ==> V3.5.6, V4.0.3 or higher releases
V4.0 ==> V3.5.6, V4.0.3 or higher releases
PROBLEM CONCLUSION:
The problem is happening because the IOR's created by the V4.0.2.
WebSphere ORB do not contain an IBM_PARTNER_VERSION tag component, where
as those created by the base Java SDK ORB do. Hursley defect 27426
introduced this change into the base ORB com.ibm.rmi.IOR class.
The problem occurs because the 1.3.1 ORB in the development release
contains a Connection fix to generate correctly nested valuetype end-tag
values when talking to non-IBM ORBs or to IBM ORBs that contain a
corresponding fix. When talking to a back level IBM ORB (such as the one
in 4.02) the code is supposed to use the old, incorrect end-tag values to
avoid inter-op problems. But in this case, because the valuetype is sent
as part of the very first flow to the server, there is no PartnerVersion
information available, so we think we are talking to a non-IBM ORB and
generate the "correct" (but bad for 4.0.2) end-tag values.
Prerequisites
None
Installation instructions
Please review the readme for detailed installation instructions