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:
- 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).
---------------> FALTA TRADUCCION
On Step 1 of the create database pool wizard enter the pool name and database type as illustrated in the following figure and then click Next.
On Step 2 leave the JDBC Driver Class: field by default (com.ibm.db2.jcc.DB2Driver). If you click on the Driver JAR: pull-down menu you should now see the three com.ibm/db2... jars you copied in the repository. Since Geronimo v1.1 only allow you to select ONE jar file from this menu select the first jar on the list, com.ibm/db2jcc/8.1.8/jar which is the driver itself. You will add manually the license jars in the next steps.
Enter the remanining connection information as shown in the following figure. For this example the default db2admin user and password was used and a SAMPLE database was created via the DB2 Control Center.
Click Next.
Leave the options on Step 3 by default, you should see the message Driver Status: Loaded Successfully.
Click on Skip Test and Show Plan.
Copy the content of the Deployment Plan: and past it as a new db2-plan.xml file. You can save this file in a directory of your convenience, for simplicity (although not recommended) we saved this file to the <geronimo_home>\bin directory.
The deployment plan generated by the wizard is shown in the following example.
<?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>
Once you saved this deployment plan you can click on Cancel at the bottom left corner of the Database Pool portlet.
Regresar a la sección supeior
Create the DB2 datasource deployment plan
Edit the db2-plan.xml file you just created and add the dependencies for the license jar files as illustrated in the following example.
<?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>
Deploy the datasource
To the deploy the DB2 datasource you just created run the following command from the <geronimo_home>\bin directory.
deploy --user system --password manager deploy db2-plan.xml ..\repository\tranql\tranql-connector\1.2\tranql-connector-1.2.rar
You should receive the following message:
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
If you go back to the Database Pools portlet you should see the DB2_ds datasource listed in the portlet.
<--------------- FALTA TRADUCCION
Regresar a la sección supeior