Java Class Filtering for JVM Compatibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Java language class compatibility across different JVM configurations is challenging due to unique class names within each Java system, leading to potential conflicts when loading classes at runtime.
Innovation Solution
A method and system that create an abstract view of a Java class by filtering and renaming it, allowing compatibility with any Java API configuration, using a Java Stack Machine and a Java Virtual Processor to manage class loading and execution, thereby avoiding conflicts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If Java classes are loaded directly with their original names in each JVM configuration, then class loading is simple and direct, but conflicts arise when the same class name exists in different JVM configurations
Solution Approach 1:
The patent introduces a filtered class as an intermediary between the original Java class and the JVM. This filtered class acts as a mediator that translates between different JVM configurations, allowing classes to be loaded uniquely in each configuration without conflicts. The filtered class includes mappings to original classes, enabling compatibility across different JVM versions and configurations.
Solution Approach 2:
The patent segments the class loading process into distinct components: original Java classes, filtered classes (abstract views), and JVM configurations. Each JVM configuration has its own filtered class namespace, separating the class loading responsibilities and preventing name conflicts between different configurations while maintaining access to the original classes through mappings.
2Measurement precision
If unique class names are enforced within each Java system, then class identification is unambiguous, but compatibility across different JVM configurations becomes difficult
Solution Approach 1:
The filtered class serves multiple functions simultaneously: it provides unique identification within each JVM configuration, maintains mappings to original classes for compatibility, and enables cross-JVM configuration communication. This multi-functional design allows a single filtered class to handle both uniqueness requirements and compatibility needs across different JVM environments.
Solution Approach 2:
The patent creates a copy of the original Java class structure in the form of a filtered class for each JVM configuration. This copy includes the necessary class information and mappings, allowing each configuration to have its own unique class names while still accessing the original classes through the filtered class mappings, thus achieving both uniqueness and compatibility.
3Productivity
If class libraries are bundled into packages for code reusability, then programming efficiency improves, but managing compatibility across different API configurations becomes complex
Solution Approach 1:
The filtered class acts as an intermediary layer between packaged class libraries and different JVM configurations. It maintains the package structure and code reusability benefits while providing configuration-specific mappings, thereby simplifying the management of API configurations across different JVM versions without sacrificing code reusability.
Data Source
AI summary
A method and system of performing Java language class extensions. At least some of the illustrative embodiments are computer-readable mediums storing a program that, when executed by a processor of a host system, causes the processor to identify a first class having a first name, and create a second class based on the first class (the second class is an abstract view of the first class, and the second class has a second name equal to a third name of a third class).


