Model-Based EJB Integration Into UI Framework
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is currently no suitable tool to support the usage of Enterprise JavaBeans (EJBs) inside a UI component like WebDynpro, requiring developers to write 'glue' code for invoking business methods and binding data, and lacking a mechanism for metadata provisioning and dynamic access of EJB components at runtime.
Innovation Solution
A model-based integration system that includes an analyzer and importer component, code generation facilities, and a generic runtime component with a metadata retrieval mechanism to generate a model representation of EJBs, allowing for intuitive consumption and dynamic access within the UI framework.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If developers manually write glue code to invoke EJB business methods and bind data, then EJB functionality can be accessed in UI components, but development complexity and time consumption increase significantly
Solution Approach 1:
The system performs preliminary analysis of EJB components during design time, automatically generating model representations and metadata before runtime. This pre-processing eliminates the need for developers to manually write glue code, as the integration framework automatically handles method invocations and data binding based on the pre-generated models.
Solution Approach 2:
The patent introduces an intermediary layer consisting of model representations and metadata that sits between the EJB components and the UI framework. This intermediary automatically manages the complex interactions, method invocations, and data bindings, shielding developers from the underlying complexity while enabling EJB functionality.
2Adaptability or versatility
If EJB components are accessed dynamically at runtime, then application flexibility improves, but the lack of metadata provisioning mechanisms creates implementation difficulties
Solution Approach 1:
Metadata and model representations are generated during design time through automatic analysis of EJB components. This preliminary action creates a comprehensive description of EJB interfaces, methods, and data structures before runtime, enabling dynamic access without requiring complex runtime analysis or manual metadata configuration.
Solution Approach 2:
The system enables EJB components to self-describe their interfaces and data structures through automatic metadata generation. The analysis mechanism automatically extracts and provisions metadata from EJB components themselves, eliminating the need for manual metadata creation or configuration by developers.
3Ease of operation
If a uniform metamodel is used for all UI types, then UI development standardization improves, but the inability to represent EJB-specific structures limits functionality
Solution Approach 1:
The patent extends the existing uniform metamodel to serve multiple purposes: it maintains compatibility with standard UI component representation while simultaneously capturing EJB-specific structures, methods, and relationships. This multi-functional metamodel allows the same framework to handle both generic UI elements and EJB-specific integrations.
Solution Approach 2:
The metamodel is enhanced by adding EJB-specific parameters and attributes to the existing uniform structure. This allows the model to represent both standard UI components and EJB components using the same framework, with extended parameters capturing EJB-specific characteristics such as business methods, transaction attributes, and deployment descriptors.
Data Source
AI summary
A system and method for integrating business logic implemented in Enterprise JavaBeans (EJBs) into a user interface framework are disclosed. A design-time environment includes an analyzer that analyzes selected EJBs and generates a model representation of the selected EJBs, and further includes a metadata provider to provide additional metadata to the model representation. A runtime environment has a generic model component to access the selected EJBs based on their model representation, and executes the selected EJBs in the user interface framework.


