Java Tag Library Preprocessing for Embedded Deployment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deploying Java applications in resource-constrained environments is challenging due to limited memory, low performance processors, and limited persistent storage, as existing solutions like WBXML still require XML parsing and do not fully address the resource constraints of embedded devices.

Innovation Solution

The method involves identifying resource constraints of a target system and filtering the Java application by preprocessing the tag library, replacing static XML deployment descriptors with parser-free descriptors, and storing classes as separate files to reduce processing requirements and eliminate the need for XML parsing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If Java applications are deployed on embedded devices using traditional methods (e.g., WBXML), then XML parsing is required which increases processing overhead, but removing XML parsing capabilities eliminates the ability to process standard Java deployment descriptors

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidXML parsing requirement
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts and removes the XML parsing requirement from the embedded device by pre-processing deployment descriptors into a simplified format during the build process. The deployment descriptor is transformed from XML to a plain text format with key-value pairs that can be directly parsed without XML parsers, eliminating the harmful XML parsing step while retaining all necessary deployment information.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies preliminary action by performing the deployment descriptor transformation during the build process rather than at runtime. The Ant build script pre-processes the XML deployment descriptor and generates a simplified configuration file that the embedded device can read directly, moving the complex XML parsing operation to a development stage where resources are abundant.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If Java applications include complete tag library descriptors for full functionality, then runtime processing capabilities are improved, but memory requirements increase which is problematic for resource-constrained devices

Engineering Contradiction:
Improveruntime processing capabilityVSAvoidmemory requirement
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential elements from the complete tag library descriptor and places them in a simplified format. By removing unnecessary XML structure and metadata, the deployment descriptor retains only the critical tag library information needed for runtime processing, significantly reducing memory requirements while maintaining functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies local quality by making the deployment descriptor format different for different stages: a complete XML format during development and a simplified key-value format for embedded deployment. This localized adaptation of the descriptor format optimizes it for the specific constraints of the embedded environment.

Inventive Principle:
Principle #3Local quality

3Productivity

If Java applications are optimized for resource-constrained environments by removing XML parsing, then processing requirements are reduced, but compatibility with standard Java deployment processes is lost

Engineering Contradiction:
Improveprocessing requirementVSAvoidcompatibility with standard Java processes
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary build process using Ant scripts that acts as a mediator between the standard Java XML-based deployment process and the simplified embedded deployment format. This intermediary automatically transforms standard XML deployment descriptors into the optimized format, maintaining compatibility with standard Java processes while enabling resource-efficient deployment on embedded devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a universal build process that can handle both standard Java projects and embedded Java projects. The Ant build script is configured to detect the target platform and automatically apply the appropriate transformation, making the same build infrastructure compatible with both full-featured and resource-constrained environments.

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

Data Source

PatentUS7849459B2Deploying java applications in resource constrained environments
Publication Date: 2010.12.07 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7849459B2 patent drawing
  • US7849459B2 patent drawing
  • US7849459B2 patent drawing

AI summary

Methods, systems, and products are provided for deploying Java applications in resource constrained environments. Embodiments include identifying a resource constraint of a target system and filtering the Java application in dependence upon the identified resource constraint. In many embodiments, identifying a resource constraint of a target system includes identifying limited runtime processing capabilities of the target system and filtering the Java application in dependence upon the identified resource constraint includes preprocessing a tag library of the Java application. In some embodiments, preprocessing a tag library is carried out by identifying a tag library descriptor of the Java application and copying a listener from the tag library descriptor to a deployment descriptor for the Java application.