The future of adapter development

One of the buzzwords in the adapter area is the J2EE Connector Architecture (J2C), aimed at providing a standard way for Enterprise Information Systems such as enterprise resource planning (ERP), customer relationship management (CRM), and legacy systems, to plug into the J2EE application platform.

J2C, which was developed under the Java Community Process (JCP), is part of J2EE, and is intended to extend what Java Database Connectivity (JDBC) has done for Java and J2EE in providing uniform and simplified connectivity with heterogeneous EISs.

IBM is committed to supporting open standards, is an active participant in the Java Community Process, and is a leading proponent of J2EE for application development. IBM is also committed to providing industry leading capabilities to its customers, to provide them with enhanced competitiveness and business agility. As such, IBM will continue to develop and encourage business partners to develop adapters that support the J2EE Connector Architecture (J2C).

J2EE enablement

The WebSphere Business Integration adapters are not currently based on J2C version 1.0, which is part of J2EE version 1.3, mainly because J2C version 1.0 supports only synchronous requests from the application server (these adapters are unidirectional).

WebSphere Business Integration Adapters are bi-directional to accommodate many business integration scenarios, including both synchronous and asynchronous requests originating from either the integration server or the EIS. In order to expose the full capability of the adapters to the J2EE application server, the adapters support interactions with WebSphere Application Server Enterprise Edition through the use of extensible markup language (XML) over Java Messaging Service (JMS). WebSphere Application Developer Integration Edition enables rapid deployment of the adapters through automatic generation of the required runtime components.

When considering J2C adapters as part of a business integration solution, it is important to understand their limitations and the implications of those limitations. While J2C version 1.5, which is part of J2EE version 1.4, will be expanded to accommodate bi-directional, synchronous, and asynchronous communications, it fails to address key limitations of the Common Client Interface (CCI), the standard API for application components to interact with a J2C resource adapter.

Limitations of the CCI

One limitation of the CCI is the lack of standard support for XML records. CCI records and result sets can represent hierarchical and tabular data, and while the CCI can be used to support XML, there is no standard way of dealing with XML records. Because XML is used widely within applications to exchange structured data, it would be useful to be able to pass XML directly between an application component and a resource adapter.

Another limitation of the CCI is the lack of standardized support for an EIS metadata repository and access APIs. EIS metadata is critical for exposing EIS remote functions and driving runtime interactions. While an adapter vendor may use any metadata repository they want, there is no standard metadata facility for EIS functions within the J2C specification.

These features are not currently part of the J2C standard in order to avoid limiting its future extensibility. But without a complete standard, J2C adapter vendors and developers are forced to use implementation-specific architectures and tooling. This limits portability of the adapters. Furthermore, the generic use of these adapters across vendors through standard tooling that minimizes coding and maximizes productivity becomes difficult.

That said, J2C adapters available from IBM and many IBM business partners are quite useful, especially those which are integrated with WebSphere Studio Application Developer.

In the future, IBM intends to enable the WebSphere Business Integration Adapter Framework to support the J2C specification, allowing WebSphere Business Integration Adapters to run as a J2C resource adapter within the J2EE application server, and allowing them to be deployed and utilized within the business integration environment easily through WebSphere Studio Application Developer. This will extend the capability of adapters based on the WebSphere Business Integration Adapter Framework to operate with different types of integration server.

Copyright IBM Corp. 1997, 2003