Java EE Connector Architecture (JCA)

JCA conecta sistemas de información empresarial como, por ejemplo, CICS®, a la plataforma JEE.

JCA da soporte a las calidades de servicio para la gestión de credenciales de seguridad, la agrupación de conexiones y la gestión de transacciones, proporcionadas por el servidor de aplicaciones JEE. El uso de JCA garantiza que estas calidades de servicio estén gestionadas por el servidor de aplicaciones JEE y no por la aplicación. Esto significa que el programador es libre de concentrarse en escribir código de negocio y no necesita preocuparse por la calidad del servicio. Para obtener información sobre las calidades de servicio proporcionadas y las directrices de configuración, consulte la documentación del servidor de aplicaciones JEE. JCA define una interfaz de programación denominada Common Client Interface (CCI). Esta interfaz se puede utilizar con cambios menores para comunicarse con cualquier sistema de información empresarial.

El modelo de interfaz de programación

Las aplicaciones que utilizan CCI tienen una estructura común para todos los sistemas de información de la empresa. JCA conecta los sistemas de información empresarial (EIS) como, por ejemplo, CICS, a la plataforma JEE. Estos objetos de conexión permiten a un servidor de aplicaciones JEE gestionar la seguridad, el contexto de transacción y las agrupaciones de conexiones para el adaptador de recursos. Una aplicación debe empezar accediendo a una fábrica de conexiones desde la que se puede adquirir una conexión. Las propiedades de la conexión se pueden alterar temporalmente mediante un objeto ConnectionSpec . Después de que se haya adquirido una conexión, se puede crear una interacción desde la conexión para realizar una solicitud determinada. La interacción, al igual que la conexión, puede tener propiedades personalizadas establecidas por la clase InteractionSpec . Para realizar la interacción, llame al método execute () y utilice objetos de registro para contener los datos. Por ejemplo:
ConnectionFactory cf = <Lookup from JNDI namespace>
Connection c = cf.getConnection(ConnectionSpec);
Interaction i = c.createInteraction();
InteractionSpec is = newInteractionSpec();
i.execute(spec, input, output);
i.close();
c.close();
El ejemplo muestra la secuencia siguiente:
  1. Utilice el objeto ConnectionFactory para crear un objeto de conexión.
  2. Utilice el objeto Connection para crear un objeto de interacción.
  3. Utilice el objeto Interaction para ejecutar mandatos en el sistema de información empresarial.
  4. Cierre la interacción y la conexión.

Si utiliza un servidor de aplicaciones JEE, cree la fábrica de conexiones configurándola utilizando la interfaz de administración del servidor. En el servidor de Liberty, esto se define a través de la configuración de server.xml . Cuando haya creado una fábrica de conexiones, las aplicaciones empresariales pueden acceder a ella consultando la JNDI (Java™ Naming Directory Interface). Este tipo de entorno se denomina entorno gestionado y permite a un servidor de aplicaciones JEE gestionar las calidades de servicio de las conexiones. Para obtener más información sobre los entornos gestionados, consulte la documentación del servidor de aplicaciones JEE.

Objetos de registro

Los objetos de registro se utilizan para representar datos que pasan a y desde el EIS. Se recomienda que se utilicen herramientas de desarrollo de aplicaciones para generar estos registros. Rational® Application Developer proporciona el conjunto de herramientas J2C que le permite crear implementaciones de la interfaz Record desde estructuras de lenguaje nativo específicas como, por ejemplo, libros de copias COBOL, con soporte incorporado para la ordenación de datos entre tipos de datos Java y no Java. 

Ejemplo de adaptador de recursos

Puede instalar un adaptador de recursos de ejemplo básico y configurar instancias de los recursos que proporciona; consulte Configuración y despliegue de un adaptador de recursos JCA básico.

La interfaz de cliente común

CCI proporciona una interfaz estándar que permite a los desarrolladores comunicarse con cualquier número de EIS a través de sus respectivos adaptadores de recursos, utilizando un estilo de programación genérico. CCI se modela estrechamente en la interfaz de cliente utilizada por Java Database Connectivity (JDBC), y es similar en su idea de Connections e Interacciones.