Java EE Connector Architecture
Encyclopedia
Java EE Connector Architecture (JCA) is a Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

-based technology solution for connecting application server
Application server
An application server is a software framework that provides an environment in which applications can run, no matter what the applications are or what they do...

s and enterprise information systems (EIS) as part of enterprise application integration
Enterprise application integration
Enterprise Application Integration is defined as the use of software and computer systems architectural principles to integrate a set of enterprise computer applications.- Overview :...

 (EAI) solutions. While JDBC is specifically used to connect Java EE applications to database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...

s, JCA is a more generic architecture for connection to legacy system
Legacy system
A legacy system is an old method, technology, computer system, or application program that continues to be used, typically because it still functions for the users' needs, even though newer technology or more efficient methods of performing a task are now available...

s (including databases). JCA was developed under the Java Community Process
Java Community Process
The Java Community Process or JCP, established in 1998, is a formalized process that allows interested parties to get involved in the definition of future versions and features of the Java platform....

 as JSR 16 (JCA 1.0), JSR 112 (JCA 1.5) and JSR 322 (JCA 1.6).

JCA and J2EE

J2EE Version 1.3 required application servers to support Version 1.0 of the J2EE Connector Architecture (JCA). J2EE Version 1.4 required application servers to support Version 1.5 of the J2EE Connector Architecture (JCA).

Contracts

The J2EE Connector Architecture defines a standard for connecting a compliant application server to an EIS. It defines a standard set of system-level contracts between the J2EE application server and a resource adapter. The system contracts defined by Version 1.0 of the J2EE Connector Architecture are described by the specification as follows:
  • Connection management
Connection management enables an application server to pool connections to the underlying EIS and enables application components to connect to an EIS. This leads to a scalable application environment that can support a large number of clients requiring access to an EIS.
  • Transaction management
Transaction management enables an application server to use a transaction manager to manage transactions across multiple resource managers. This contract also supports transactions that are managed internal to an EIS resource manager without the necessity of involving an external transaction manager.
  • Security management
Security management provides support for a secure application environment that reduces security threats to the EIS and protects valuable information resources managed by the EIS.


The additional system contracts defined by Version 1.5 of the J2EE Connector Architecture are described by the specification as follows:
  • Life cycle management
Life cycle management enables an application server to manage the life cycle of a resource adapter. This contract provides a mechanism for the application server to bootstrap a resource adapter instance during its deployment or application server startup, and to notify the resource adapter instance during its undeployment or during an orderly shutdown of the application server.
  • Work management
Work management enables a resource adapter to do work (monitor network endpoints, call application components, and so on) by submitting work instances to an application server for execution. The application server dispatches threads to execute submitted work instances. This allows a resource adapter to avoid creating or managing threads directly, and allows an application server to efficiently pool threads and have more control over its run time environment. The resource adapter can control the transaction context with which work instances are executed.
  • Transaction inflow management
Transaction inflow management enables a resource adapter to propagate an imported transaction to an application server. This contract also allows a resource adapter to transmit transaction completion and crash recovery calls initiated by an EIS, and ensures that the Atomicity, Consistency, Isolation and Durability (ACID
ACID
In computer science, ACID is a set of properties that guarantee database transactions are processed reliably. In the context of databases, a single logical operation on the data is called a transaction...

) properties of the imported transaction are preserved.
  • Message inflow management
Message inflow management enables a resource adapter to asynchronously deliver messages to message endpoints residing in the application server independent of the specific messaging style, messaging semantics, and messaging infrastructure used to deliver messages. This contract also serves as the standard message provider pluggability contract that allows a wide range of message providers (Java Message Service
Java Message Service
The Java Message Service API is a Java Message Oriented Middleware API for sending messages between two or more clients. JMS is a part of the Java Platform, Enterprise Edition, and is defined by a specification developed under the Java Community Process as JSR 914...

 (JMS), Java API for XML Messaging
Java API for XML Messaging
The Java API for XML Messaging enables distributed software applications to communicate using XML . JAXM supports both asynchronous and synchronous messaging.-External links:*...

 (JAXM), and so on) to be plugged into any J2EE compatible application server with a resource adapter.

EIS Integration

The JCA adapters can be built to integrate with various Enterprise Information System like Siebel, SAP, Great Plains System, Oracle Applications, etc.
  • Siebel provides API to integrate with various platforms like Java
    Java (programming language)
    Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

    , C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

    , .Net, Visual Basic, etc. For Java it provides an interface called 'Java Data Bean'. When we build a JCA adaptor for Siebel we have to use the Java Data Bean API.

  • Great Plains system provides an interface called eConnect to integrate with other platforms.

  • SAP
    SAP AG
    SAP AG is a German software corporation that makes enterprise software to manage business operations and customer relations. Headquartered in Walldorf, Baden-Württemberg, with regional offices around the world, SAP is the market leader in enterprise application software...

     provides a interface for Java
    Java (programming language)
    Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

    called SAP Java Connector (SAP JCo)

External links


The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK