Generic Data Structure for Java-Flex Cross-Language Exchange

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data exchange methods between ADOBE FLEX and Java systems are inefficient, requiring extra computing cycles for XML conversions and prone to 'class cast exceptions' due to the need for multiple RemoteObject classes and complex exception handling.

Innovation Solution

A generic data structure, such as a hash map and collection/array, is used to store value objects for bidirectional data exchange, along with a specialized result object for exception handling, eliminating the need for XML conversions and reducing exception parsing complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is represented as an XML string for data exchange between server-side Java and client-side FLEX, then inter-language data exchange capability is provided, but extra computing cycles are needed to convert an object to XML and the XML to an object

Engineering Contradiction:
Improveinter-language data exchange capabilityVSAvoidcomputing cycle efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts the data exchange mechanism from the XML string format and replaces it with a generic data structure (HashMap). This eliminates the need for XML conversion while maintaining inter-language data exchange capability between Java and FLEX systems.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the data representation parameter from XML strings to generic data structures (HashMap with key-value pairs). This parameter change eliminates the conversion overhead while preserving data exchange functionality across different programming languages.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If the FLEX framework's Remote Object service is used to expose server-side Java objects, then data can be represented as Java objects on the server side and ActionScript objects on the client side, but various classes that extend the FLEX RemoteObject must be created on both server and client sides

Engineering Contradiction:
Improveobject-oriented data exchangeVSAvoidclass creation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies a universal generic data structure (HashMap) that can serve multiple purposes: data storage, data exchange, and exception handling. This single structure replaces the need for multiple specialized RemoteObject classes, reducing complexity while maintaining object-oriented capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Instead of extending RemoteObject classes to achieve data exchange, the patent inverts the approach by using a generic data structure that natively supports cross-language exchange without inheritance. This eliminates the need for class creation while achieving the same or better functionality.

Inventive Principle:
Principle #13The other way round (Inversion)

3Adaptability or versatility

If the FLEX RemoteObject approach is used, then data exchange between Java and ActionScript is enabled, but class cast exception occurs when the same RemoteObject class is instantiated in multiple application domains

Engineering Contradiction:
Improvecross-domain data exchangeVSAvoidexception stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a generic data structure (HashMap) as an intermediary between Java and ActionScript objects. This mediator eliminates the need for direct RemoteObject instantiation across domains, preventing class cast exceptions while enabling cross-domain data exchange.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If a server-side Java method throws an exception, then the FLEX client catches the exception as a FaultEvent object containing a stack of nested exceptions, but it is very hard to parse the exception stack to extract pertinent error message

Engineering Contradiction:
Improveexception handling capabilityVSAvoiderror message extraction
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent extracts the error message from the complex nested exception stack and places it directly in the generic data structure returned to the client. This extraction eliminates the need for parsing deep exception stacks, making error message retrieval simple and direct.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9092280B2Method and system for data exchange and exception handling in a data processing environment
Publication Date: 2015.07.28 SYBASE INC
  • US9092280B2 patent drawing
  • US9092280B2 patent drawing
  • US9092280B2 patent drawing

AI summary

System, method, computer program product embodiments and combinations and sub-combinations thereof for data exchange and exception handling in a data processing environment are described. Aspects include providing a generic data structure to store a value object and a collection of value Objects based upon built-in programming capabilities of a client system and a server system that achieve a rich Internet application experience within a data processing network, and utilizing the generic data structure to exchange data between the client system and the server system of the data processing network. A specialized result form of the generic data structure is also provided and utilized to manage generated exceptions of the data exchanges.