Acceso a datos utilizando conectores JCA (Java EE Connector Architecture)
Para acceder a los datos desde una aplicación compatible con JCA (Java™ EE Connector Architecture) en WebSphere Application Server, se configuran y se utilizan adaptadores de recursos y fábricas de conexiones.
Acerca de esta tarea
El componente de una aplicación utiliza una fábrica de conexiones para acceder a una instancia de conexión, que utiliza luego el componente para conectarse al Sistema de información de empresa (EIS) subyacente. Algunos ejemplos de conexiones son las conexiones de base de datos, las conexiones de Java Message Service y las conexiones de SAP R/3.
Como se indica en la especificación de JCA (Java EE Connector Architecture), cada sistema EIS (Enterprise Information System) necesita una adaptador de recursos y una fábrica de conexiones. A esta fábrica de conexiones se accede mediante el modelo de programación siguiente. Si utiliza las herramientas Rational Application Development, usted generará la mayoría de los siguientes descriptores de despliegue y el código. Este ejemplo muestra el método manual de acceder a recursos EIS.
Procedimiento
Ejemplo
En el segmento de código siguiente se muestra la forma en que un componente de aplicación puede crear una interacción e implementarla en el EIS:
javax.resource.cci.ConnectionFactory connectionFactory = null;
javax.resource.cci.Connection connection = null;
javax.resource.cci.Interaction interaction = null;
javax.resource.cci.InteractionSpec interactionSpec = null;
javax.resource.cci.Record inRec = null;
javax.resource.cci.Record outRec = null;
try {
// Localice el componente de aplicación y realice una búsqueda de JNDI
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
connectionFactory = (javax.resource.cci.ConnectionFactory)
ctx.lookup("java:comp/env/eis/myConnection");
// cree una conexión
connection = connectionFactory.getConnection();
// Cree un objeto Interaction e InteractionSpec
interaction = connection.createInteraction();
interactionSpec = new InteractionSpec();
interactionSpec.setFunctionName("GET");
// Cree un registro de entrada
inRec = new javax.resource.cci.Record();
// Ejecute una interacción
interaction.execute(interactionSpec, inRec, outRec);
// Procese la salida...
} catch (Exception e) {
// Manejo de la excepción
}
finally {
if (interaction != null) {
try {
interaction.close();
}
catch (Exception e) {/* ignorar la excepción*/}
}
if (connection != null) {
try {
connection.close();
}
catch (Exception e) {/* ignorar la excepción*/}
}
}