HomeDocumentation > Apache Geronimo v1.1 - Guí­a de Usuario > Administrando Geronimo > B. Configurando al Datasource DB2
{scrollbar}

top

Este artículo muestra como configurar un datasource DB2 en Apache Geronimo v1.1. Normalmente usarías la Geronimo Administration Console (Consola de Administración de Geronimo) y al ayudante de creación de pool para esta tarea, pero ese método sólo te permite especificar UN controlador archivo jar. En el caso de DB2 podrías tener múltiples archivos, uno para el controlador y dos adicionales para la licencia.

Este artículo se concentra en las tareas para la adición manual de los archivos jar adicionales a la configuración del datasource.

Agregar DB2 al repositorio

Para agregar controladores DB2 y la licencia al repositorio Geronimo, necesitarás colocar esos archivos en una estructura particular de directorios. Normalmente tendrás que agregar tres archivos al repositorio, los cuales son:

  • db2jcc.jar - Este es el verdadero archivo jar Controlador JDBC DB2 Universal.
  • db2jcc_license_cu.jar - Este es el archivo licencia estándar del controlador JDBC DB2 Universal que permite el acceso a la base de datos Universal DB2 para servidores Linux, Unix y Windows.
  • db2jcc_license_cisuz.jar - Esta es la licencia del Controlador JDBC DB2 (DB2 ESE y DB2 Connect) para z/OS e iSeries, que debería usarse además de la licencia estándar para dichos servidores.

Estos archivos estan disponibles en el directorio <sqllib_home>\java. Para información adicional acerca de los controladores JDBC DB2 y sus licencias, visita el Centro de Información DB2, disponible en la siguiente URL:

http://publib.boulder.ibm.com/infocenter/db2luw/v8/topic/com.ibm.db2.udb.doc/ad/t0010264.htm

Para poder usar estos archivos en Geronimo, necesitarás renombrarlos (copiar y renombrar) como se describe en la tabla siguiente,

Nombre original

Renombrado

db2jcc.jar

db2jcc-8.1.8.jar

db2jcc_license_cu.jar

db2jcc_license_cu-8.1.8.jar

db2jcc_license_cisuz.jar

db2jcc_license_cisuz-8.1.8.jar

Esto significa que para este caso particular, DB2 v8.1.8.806 fue usado.

En este punto estas listo para agregar esos archivos al repositorio Geronimo, y para lograrlo tienes dos alternaticas. Puedes usar una herramienta gráfica ó de línea de comandos para copiar los archivos y crear los directorios necesarios, ó bien, puedes usar la Consola de Administración de Geronimo y agregar el controlador y licencias a las librerías comunes. A continuación cubriremos ambas alternativas.

Usando línea de comandos

Necesitarás crear la siguiente estructura de directorios bajo el directorio <geronimo_home>\repository y copiar los archivos apropiados a los directorios respectivos.

  • com/ibm/db2jcc/8.1.8
    y copia db2jcc-8.1.8.jar a ese directorio.
  • com/ibm/db2jcc_license_cisuz/8.1.8
    y copia db2jcc_license_cisuz-8.1.8.jar a ese directorio.
  • com/ibm/db2jcc_license_cu/8.1.8
    y copia db2jcc_license_cisuz-8.1.8.jar a ese directorio.

Usando la Consola de Administración de Geronimo

Para poder usar la consola, Apache Geronimo debe estar en ejecución. Ingresa a la Consola de Administración de Geronimo mediante tu explorador web, apuntando a la URL siguiente:

http://localhost:8080/console

  • Ingresa system como usuario y manager como contraseña y da clic a Login.
  • Haz clic en Common Libs (Librerías Comunes) para ingresar al portlet Repository viewer (Visor de Repositorio).
  • Haz clic en Browse (Explorar) y elige al primer archivo a instalar. En este caso primero instalaremos db2jcc-8.1.8.jar.
  • Se propondrán un grupo predeterminado de valores; coloca en Group: a com.ibm, deja al resto con sus valores existentes, y haz clic en Install (Instalar).
  • Repite los dos pasos previos para db2jcc_license_cisuz-8.1.8.jar y db2jcc_license_cisuz-8.1.8.jar.

Con los archivos controladores y licencias instalados, ya puedes crear una nueva pool de conexiones a una base de datos.

Crea una plantilla de plan de activación

Desde la Consola de Administración de Geronimo elige Database Pools (Pools de Base de datos) y crea una nueva pool haciendo clic en Using the Geronimo database pool wizard (Usando al ayudante de Geronimo para pool de base de datos).

En el Step 1 (Paso 1) del ayudante para creación de base de datos, proporcional al nombre del pool y el tipo de base de datos como se indica en la figura siguiente, para después hacer clic en Next (Siguiente).

En el Step 2 (Paso 2) manten el valor predeterminado (com.ibm.db2.jcc.DB2Driver) en el campo JDBC Driver Class: (Clase del Controlador JDBC: ) Al hacer clic en el menú desplegable Driver JAR: (JAR Controlador: ) deberías ver los tres jars com.ibm/db2... que copiaste al repositorio. Como Geronimo v1.1 sólo te permitirá elegir UN archivo jar de este menú, elige al primer jar de la lista com.ibm/db2jcc/8.1.8/jar el cual sí es el controlador. A continuación agregaras los jars de licencia manualmente.

Ingresa la información restante de conexión, como se muestra en la figura siguiente. Para este ejemplo se emplea al usuario db2admin predeterminado junto con su contraseña, y además se creó una base de datos SAMPLE vía el Centro de Control DB2.

Haz clic en Next (Siguiente).

Deja las opciones predeterminadas del Step 3 (Paso 3), con lo que deberías ver al mensaje Driver Status: Loaded Successfully (Estado del Controlador: Cargado Exitosamente).

Haz clic en Skip Test and Show Plan (Omitir Prueba y Mostrar Plan).

Copia al contenido del Deployment Plan: (Plan de Activación: ) y pegalo como un nuevo archivo db2-plan.xml. Puedes guardar a este archivo en algún diretorio de tu elección; por simplicidad (aunque no se recomienda) guardamos este archivo en el directorio <geronimo_home>\bin.

El plan de activación generado por el ayudante, se muestra en el siguiente ejemplo.

xmlsolidPlan de activación generado por el ayudante <?xml version="1.0" encoding="UTF-8"?> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.1"> <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1"> <dep:moduleId> <dep:groupId>console.dbpool</dep:groupId> <dep:artifactId>DB2_ds</dep:artifactId> <dep:version>1.0</dep:version> <dep:type>rar</dep:type> </dep:moduleId> <dep:dependencies> <dep:dependency> <dep:groupId>com.ibm</dep:groupId> <dep:artifactId>db2jcc</dep:artifactId> <dep:version>8.1.8</dep:version> <dep:type>jar</dep:type> </dep:dependency> </dep:dependencies> </dep:environment> <resourceadapter> <outbound-resourceadapter> <connection-definition> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface> <connectiondefinition-instance> <name>DB2_ds</name> <config-property-setting name="Password">db2admin</config-property-setting> <config-property-setting name="Driver">com.ibm.db2.jcc.DB2Driver</config-property-setting> <config-property-setting name="UserName">db2admin</config-property-setting> <config-property-setting name="ConnectionURL">jdbc:db2://localhost:50000/SAMPLE</config-property-setting> <connectionmanager> <local-transaction/> <single-pool> <max-size>10</max-size> <min-size>0</min-size> <match-one/> </single-pool> </connectionmanager> </connectiondefinition-instance> </connection-definition> </outbound-resourceadapter> </resourceadapter> </connector>

Al haber almacenado este plan de activación, puedes hacer clic en Cancel (Cancelar) en la esquina inferior izquierda del portlet Database Pool.

Regresar a la sección supeior

Crear al plan de activación del DB2 datasource

Edita al archivo db2-plan.xml recién creado y agrega las dependencias para los archivos jar de licencia, como se ilustra en el siguiente ejemplo.

xmlsolidPlan de activación db2-plan.xml actualizado <?xml version="1.0" encoding="UTF-8"?> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.1"> <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1"> <dep:moduleId> <dep:groupId>console.dbpool</dep:groupId> <dep:artifactId>DB2_ds</dep:artifactId> <dep:version>1.0</dep:version> <dep:type>rar</dep:type> </dep:moduleId> <dep:dependencies> <dep:dependency> <dep:groupId>com.ibm</dep:groupId> <dep:artifactId>db2jcc</dep:artifactId> <dep:version>8.1.8</dep:version> <dep:type>jar</dep:type> </dep:dependency> <!-- Add db2jcc_license_cisuz license dependencies --> <dep:dependency> <dep:groupId>com.ibm</dep:groupId> <dep:artifactId>db2jcc_license_cisuz</dep:artifactId> <dep:version>8.1.8</dep:version> <dep:type>jar</dep:type> </dep:dependency> <!-- Add db2jcc_license_cu license dependencies --> <dep:dependency> <dep:groupId>com.ibm</dep:groupId> <dep:artifactId>db2jcc_license_cu</dep:artifactId> <dep:version>8.1.8</dep:version> <dep:type>jar</dep:type> </dep:dependency> </dep:dependencies> </dep:environment> <resourceadapter> <outbound-resourceadapter> <connection-definition> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface> <connectiondefinition-instance> <name>DB2_ds</name> <config-property-setting name="Password">db2admin</config-property-setting> <config-property-setting name="Driver">com.ibm.db2.jcc.DB2Driver</config-property-setting> <config-property-setting name="UserName">db2admin</config-property-setting> <config-property-setting name="ConnectionURL">jdbc:db2://localhost:50000/SAMPLE</config-property-setting> <connectionmanager> <local-transaction/> <single-pool> <max-size>10</max-size> <min-size>0</min-size> <match-one/> </single-pool> </connectionmanager> </connectiondefinition-instance> </connection-definition> </outbound-resourceadapter> </resourceadapter> </connector>

Activa al datasource

Para activar al DB2 datasource que acabas de crear, ejecuta al comando siguiente desde el directorio <geronimo_home>\bin.

deploy --user system --password manager deploy db2-plan.xml ..\repository\tranql\tranql-connector\1.2\tranql-connector-1.2.rar

Deberías recibir al mensaje siguiente:

#000000solid E:\geronimo-1.1\bin>deploy --user system --password manager deploy db2-plan.xml ..\repository\tranql\tranql-connector\1.2\tranql-connector-1.2.rar Using GERONIMO_BASE: E:\geronimo-1.1 Using GERONIMO_HOME: E:\geronimo-1.1 Using GERONIMO_TMPDIR: E:\geronimo-1.1\var\temp Using JRE_HOME: C:\j2sdk1.4.2_09 Deployed console.dbpool/DB2_ds/1.0/rar

Si regresas al portlet Database Pools, deberías ver al datasource DB2_ds enlistado en dicho portlet.

Regresar a la sección supeior