RMI-IIOP Encoding Selection via Java Serialization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing RMI-IIOP implementations face inefficiencies in data encoding, as they rely on conventional CORBA CDR, which can have overheads, and lack flexibility in switching between encoding types during message exchanges.
Innovation Solution
Implementing Java serialization as an alternative or additional encoding format for RMI-IIOP messages, allowing dynamic selection between Java serialization and CDR, while maintaining the GIOP protocol, and using Interoperable Object References (IORs) to indicate supported encoding types for clients and servers to adapt accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional CORBA CDR encoding is used for RMI-IIOP messages, then compatibility with existing systems is maintained, but communication performance and efficiency deteriorate due to overhead
Solution Approach 1:
The patent changes the encoding parameter from conventional CDR to Java serialization format, improving communication performance by eliminating CDR-specific overhead while maintaining RMI-IIOP functionality through dynamic encoding selection
2Adaptability or versatility
If a single encoding type is used for RMI-IIOP messages, then implementation simplicity is maintained, but flexibility in message exchanges deteriorates
Solution Approach 1:
The patent implements dynamic encoding selection where the ORB can switch between CDR and Java serialization formats based on runtime conditions, client capabilities, and message requirements, making the encoding mechanism adaptive rather than static
Solution Approach 2:
The ORB is designed to support multiple encoding types (both CDR and Java serialization) simultaneously, allowing it to function as a universal message handler that can process different encoding formats through a unified interface
3Productivity
If Java serialization is adopted as an alternative encoding format, then efficiency is improved, but compatibility with older versions deteriorates unless multiple encoding types are supported
Solution Approach 1:
The patent modifies the encoding parameter to accept multiple values (CDR or Java serialization) based on client capabilities and server support, enabling efficient Java serialization for capable clients while maintaining CDR compatibility for older systems
Data Source
AI summary
Method and apparatus for determining data encoding format in RMI-IIOP messages. Embodiments may provide a mechanism to use Java serialization rather than, or as an alternative to, CORBA Common Data Representation (CDR), for the marshaling and unmarshaling of data in RMI-IIOP message exchanges. In one embodiment, a server-side Object Request Broker (ORB) may be configured to support the encoding of data in RMI-IIOP messages in accordance with CDR encoding and Java serialization encoding. In one embodiment, an Interoperable Object References (IOR) published by the server may include information that indicates which encoding type(s) are supported by the server-side ORB on the server that hosts the associated object. A client-side ORB may optionally use Java serialization or CDR as the data encoding format for RMI-IIOP messages to invoke the associated object on the server. Each RMI-IIOP message may include an indication of which encoding type is used in the message.


