-
Key: JAV2I12-24
-
Legacy Issue Number: 3969
-
Status: closed
-
Source: hursley.ibm.com ( Simon Nash)
-
Summary:
The Java to IDL mapping does not specify how the Java classes produced
by the forward mapping from the CORBA "any" and "TypeCode" types should
be mapped back to IDL.Since org.omg.CORBA.Any and org.omg.CORBA.TypeCode both inherit from
IDLEntity, section 1.3.9 implies that these types should be "boxed" in
the same way as other IDLEntity types. This would imply the following
mapping to IDL:module org {
{ valuetype _Any any; #pragma ID Any “RMI:org.omg.CORBA.Any:xxxxxxxxxxxxxxxx:yyyyyyyyyyyyyyyy” }
module omg {
module boxedIDL {
module CORBA;
};
};
};module org {
{ valuetype TypeCode ::CORBA::TypeCode; #pragma ID TypeCode “RMI:org.omg.CORBA.TypeCode:xxxxxxxxxxxxxxxx:yyyyyyyyyyyyyyyy” }
module omg {
module boxedIDL {
module CORBA;
};
};
};The above raises a number of questions:
1. What is the correct IDL name for the boxed valuetype enclosing the Java "Any"
type? Is it ::org::omg::boxedIDL::CORBA::_Any or ::org::omg::boxedIDL::_any?2. How should the hashcodes and SUIDs be computed in the above repid pragmas?
For other boxed IDLEntity Java types, these are computed from the actual
implementation classes. However, for these two types, the actual
implementation classes are ORB-specific and it seems meaningless to send
their hashcodes or SUIDs on the wire. We could either do what we do for
object references and send zeros for the hashcode and SUID, or we could
use IDL-style repids instead or RMI-style repids for these types.3. Is it better to make these types an exception to the general rule as defined
in section 1.3.9? An alternative non-boxed mapping would be to simply map
them to the IDL/PIDL types "any" and "::CORBA::TypeCode". This would have
the drawback that RMI semantics of being able to pass nulls and maintaining
referential integrity for shared references to "by value" Java objects would
not apply to these Java types. -
Reported: JAV2I 1.0b1 — Wed, 18 Oct 2000 04:00 GMT
-
Disposition: Resolved — JAV2I 1.1
-
Disposition Summary:
See revised text below.
-
Updated: Fri, 6 Mar 2015 20:58 GMT
JAV2I12 — Mapping of CORBA any and TypeCode
- Key: JAV2I12-24
- OMG Task Force: Java to IDL December 2000 RTF