The Java Connector Architecture (JCA) defines a standard architecture for connecting the Java EE platform to
heterogeneous Enterprise Information Systems (EIS). Examples of EISs include Enterprise Resource
Planning (ERP), mainframe transaction processing (TP), database and messaging systems.
The connector architecture defines a set of scalable, secure, and transactional mechanisms that enable
the integration of EISs with application servers and enterprise applications.
The connector architecture also defines a Common Client Interface (CCI) for EIS access. The CCI defines
a client API for interacting with heterogeneous EISs.
The connector architecture enables an EIS vendor to provide a standard resource adapter for its EIS.
A resource adapter is a system-level software driver that is used by a Java application to connect
to an EIS. The resource adapter plugs into an application server and provides connectivity between
the EIS, the application server, and the enterprise application. The resource adapter serves as a
protocol adapter that allows any arbitrary EIS communication protocol to be used for connectivity.
An application server vendor extends its system once to support the connector architecture and is
then assured of seamless connectivity to multiple EISs. Likewise, an EIS vendor provides one standard
resource adapter which has the capability to plug in to any application server that supports
the connector architecture.
Use cases for Java EE Connector Architecture
Examples of resource adapters
A Java Database Connectivity (JDBC) resource adapter, which provides the foundation for datasources inside an application server, like WildFly
A Java Message Service (JMS) resource adapter, which enables communication with messaging systems, like HornetQ, ActiveMQ or WebSphereMQ
A Java Mail resource adapter, which allows email to trigger EJB3/Message-Driven Beans
A resource adapter for a legacy system that speak a weird binary protocol to be integrated with a Java Enterprise Edition server
In short - when ever you have a situation where the system that you want to integrate with
doesn't support a standard protocol, or when you want to take advantage of the cool features
of Java EE Connector Architecture like pooling, security and transaction integration it is
time to write a resource adapter !
Adrian Brock, Carlo de Wolf, Gurkan Erdogdu, Bruno Georges, Paul Gier,
Jason Greene, Stefan Guilhen, Jonathan Halliday, Søren Hilmer, Tom Jenkinson, Ales Justin,
Vicky Kak, Aslak Knutsen, Sacha Labourey, Mark Little, Alexey Loubyansky, Patrick MacDonald,
Scott Marlow, Shelly McGowan, Andrig Miller, Marcus Moyses, Weston Price, Andrew Lee Rubinger,
Heiko Rupp, Anil Saldhana, Scott Stark, Clebert Suconic, Andy Taylor, Vladimir Vasilev,
Jeremy Whiting, Yang Yong and Leslie York.