Common Components (Shared Between Client and Server)
Distributed Business Model
Supports separating the business object model into a client and server side representation, eliminating the need for a remote call every time a Swing client needs to access data.

Code Generation
Provides meta-model-based code generation for business model and controller objects, significantly reducing the amount of code that needs to be written manually and providing for easier maintenance.

Security Model
Provides a powerful model to authenticate users and specify user permissions; supports single sign on and sharing/inheriting security models between applications.

Validation
Provides standardized support for business data type validation as well as hooks for custom field and cross validation; supports application or channel specific validation error handling while sharing common validation logic.

Distributed Transaction
Supports nested transactions and two-phase commits between clients and servers; provides the capability to roll back changes in memory to keep them consistent with external resources.

Code Table
Supports customizable lists (e.g. branch codes) that can be used to present choices in applications at run time. Logging Provides distributed logging that can be filtered by topic and severity. JMS Bridging Allows remote subscribing and bridging between multiple JMS domains.