Valores mínimos necesarios de origen de datos para Informix
Estas propiedades varían según los requisitos del proveedor de la base de datos para las implementaciones del controlador JDBC. Debe establecer las propiedades adecuadas cada origen de datos que configure. Estos valores son para los orígenes de datos de Informix.
- Controlador JDBC de Informix
El controlador JDBC de Informix es un controlador JDBC de tipo 4 que proporciona el acceso de JDBC a la base de datos Informix.
El controlador JDBC de Informix da soporte al origen de datos de una fase:
Necesita los archivos siguientes del controlador JDBC:com.informix.jdbcx.IfxConnectionPoolDataSource
Requiere la clase DataStoreHelper siguiente:ifxjdbc.jar ifxjdbcx.jar
Necesita un alias de autenticación válido.com.ibm.websphere.rsadapter.InformixDataStoreHelper
Requiere las propiedades siguientes:- serverName
Nombre de la instancia Informix en el servidor. Ejemplo: ol_myserver.
- portNumber
El puerto en el que las instancias están a la escucha. Ejemplo: 1526.
- ifxIFXHOST
La dirección IP o el nombre de host de la máquina donde se ejecuta la base de datos Informix con la que desea conectar. Ejemplo: miservidor.midominio.com.
Para dar soporte a IPv6: en AIX y Solaris, IBM Informix Dynamic Server 10.00 con fixpack 1 da soporte al estándar IPv6. Para habilitar IPv6 en la conexión de WebSphere Application Server con uno de estos releases de Informix, especifique el nombre de host IPv6 completo para la propiedad ifxIFXHOST.
- databaseName
Nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
- informixLockModeWait
Aunque no es necesaria, esta propiedad permite establecer el número de segundos que espera el software de Informix un bloqueo. De forma predeterminada, el código de Informix genera una excepción si no puede obtener el bloqueo inmediatamente. Ejemplo: 2.
- serverName
- Controlador JDBC de Informix (XA)
El controlador JDBC de Informix (XA) es un controlador JDBC de tipo 4 que proporciona el acceso de JDBC compatible con XA a la base de datos Informix.
El Controlador JDBC de Informix (XA) da soporte al origen de datos de dos fases:
Necesita los archivos siguientes del controlador JDBC:com.informix.jdbcx.IfxXADataSource
ifxjdbc.jar ifxjdbcx.jar
Para utilizar SQLJ: este proveedor también necesita el archivo de controlador ifxsqlj.jar si planea utilizar SQLJ para consultas.
Requiere la clase DataStoreHelper siguiente:com.ibm.websphere.rsadapter.InformixDataStoreHelper
Necesita un alias de autenticación válido.
Requiere las propiedades siguientes:- serverName
Nombre de la instancia Informix en el servidor. Ejemplo: ol_myserver.
- portNumber
El puerto en el que las instancias están a la escucha. Ejemplo: 1526.
- ifxIFXHOST
La dirección IP o el nombre de host de la máquina donde se ejecuta la base de datos Informix con la que desea conectar. Ejemplo: miservidor.midominio.com.
Para dar soporte a IPv6: en AIX y Solaris, IBM Informix Dynamic Server 10.00 con fixpack 1 da soporte al estándar IPv6. Para habilitar IPv6 en la conexión de WebSphere Application Server con uno de estos releases de Informix, especifique el nombre de host IPv6 completo para la propiedad ifxIFXHOST.
- databaseName
Nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
- ifxIFX_XASPEC
Active esta propiedad cuando varios usuarios accedan a la misma base de datos. La activación de la propiedad fuerza la correspondencia estricta de transacciones XA dentro del mismo ID de transacción global, y requiere que las transacciones compartan el espacio de bloqueo.
Estos parámetros evitan la aparición de errores de gestión de transacciones en el caso de que existan varias solicitudes de cliente.
Active la propiedad ifxIFX_XASPEC asignándole el valor de Y o y; los dos caracteres sirven porque el valor no diferencia mayúsculas y minúsculas. Desactive la propiedad asignándole el valor N o n. WebSphere Application Server ignora los demás valores. El valor de la propiedad altera temporalmente el valor del sistema de la base de datos Informix.
- informixLockModeWait
Aunque no es necesaria, esta propiedad permite establecer el número de segundos que espera el software de Informix un bloqueo. De forma predeterminada, el código de Informix genera una excepción si no puede obtener el bloqueo inmediatamente. Ejemplo: 2.
- serverName
- Informix con controlador IBM JCC
El controlador Informix IBM JCC es un proveedor de confirmación de una fase para Informix que utiliza el IBM Data Server Driver para JDBC y SQLJ. El controlador del servidor de datos de IBM es compatible con 4.0 y es la siguiente generación del controlador JCC Universal.
Este proveedor es configurable en los nodos de la versión 7.0 y posteriores.
Se da soporte al siguiente origen de datos de una fase:com.ibm.db2.jcc.DB2ConnectionPoolDataSource
Se requieren los siguientes archivos de controlador JDBC:
también la siguiente clase DataStoreHelper:db2jcc4.jar db2jcc_license_cu.jar db2jcc_license_cisuz.jar
com.ibm.websphere.rsadapter.InformixJccDataStoreHelper
Este proveedor requiere un alias de autenticación válido.
Se requieren las siguientes propiedades:- serverName: la dirección TCP/IP o nombre de host del servidor Informix.
- portNumber: el número de puerto TCP/IP donde se encuentra el servidor Informix.
- databaseName: nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
- Informix con el controlador JCC de IBM (XA)
El controlador Informix IBM JCC (XA) es un proveedor de confirmación en dos fases para Informix que utiliza el IBM Data Server Driver para JDBC y SQLJ. El controlador del servidor de datos de IBM es compatible con 4.0 y es la siguiente generación del controlador JCC Universal.
Este proveedor es configurable en los nodos de la versión 7.0 y posteriores.
Se da soporte al siguiente origen de datos de dos fases:com.ibm.db2.jcc.DB2XADataSource
Se requieren los siguientes archivos de controlador JDBC:
también la siguiente clase DataStoreHelper:db2jcc4.jar db2jcc_license_cu.jar db2jcc_license_cisuz.jar
com.ibm.websphere.rsadapter.InformixJccDataStoreHelper
Avoid trouble: Si tiene planificado utilizar SQLJ para las consultas, este proveedor también necesita el archivo de controlador ifxsqlj.jar.gotcha
Este proveedor requiere un alias de autenticación válido.
Se requieren las siguientes propiedades:- serverName: la dirección TCP/IP o nombre de host del servidor Informix.
- portNumber: el número de puerto TCP/IP donde se encuentra el servidor Informix.
- databaseName: nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
Avoid trouble: No puede utilizar los orígenes de datos Informix XA con bases de datos ANSI si las sentencias SQL se emiten en transacciones locales y no en transacciones globales. Este caso de ejemplo se puede producir en el código de la aplicación o en un componente del servidor de aplicaciones, como un planificador. Se puede registrar el siguiente error si se experimenta este problema:
gotchajava.sql.SQLException: Already in transaction. at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:398) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:3247) at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3556) at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2382) at com.informix.jdbcx.IfxXASqli.receiveMessage(IfxXASqli.java:120) at com.informix.jdbc.IfxSqli.X(IfxSqli.java:7926) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:854) at com.informix.jdbc.IfxSqli.executeCommand(IfxSqli.java:749) at com.informix.jdbc.IfxResultSet.b(IfxResultSet.java:293) at com.informix.jdbc.IfxStatement.c(IfxStatement.java:1269) at com.informix.jdbc.IfxStatement.b(IfxStatement.java:423) at com.informix.jdbc.IfxStatement.executeUpdate(IfxStatement.java:277) at com.informix.jdbc.IfxSqliConnect.setTransactionIsolation(IfxSqliConnect.java:2565)
Para evitar este problema:- Cambie a una base de datos distinta a ANSI.
- Si es una aplicación la que desencadena el error, actualice la aplicación de modo que se ejecute siempre en una transacción global.
- Informix con controlador Universal JDBC de IBM DB2
El controlador JDBC de Informix es un controlador JDBC de tipo 4 compatible con JDBC 3.0 que proporciona acceso a la base de datos Informix.
Este proveedor da soporte al siguiente origen de datos de una fase:com.ibm.db2.jcc.DB2ConnectionPoolDataSource
Se requieren los siguientes archivos de controlador JDBC:
también la siguiente clase DataStoreHelper:db2jcc.jar db2jcc_license_cu.jar db2jcc_license_cisuz.jar
com.ibm.websphere.rsadapter.InformixJccDataStoreHelper
Este proveedor requiere un alias de autenticación válido.
Se requieren las siguientes propiedades:- serverName: la dirección TCP/IP o nombre de host del servidor Informix.
- portNumber: el número de puerto TCP/IP donde se encuentra el servidor Informix.
- databaseName: nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
- Informix con controlador Universal JDBC de IBM DB2 (XA)
El controlador JDBC de Informix que utiliza DB2 (XA) es un controlador JDBC de tipo 4 que es compatible con JDBC 3.0 y proporciona acceso de JDBC compatible con XA a la base de datos Informix.
Este proveedor da sopore al siguiente origen de datos de dos fases:com.ibm.db2.jcc.DB2XADataSource
Se requieren los siguientes archivos de controlador JDBC:
también la siguiente clase DataStoreHelper:db2jcc.jar db2jcc_license_cu.jar db2jcc_license_cisuz.jar
com.ibm.websphere.rsadapter.InformixJccDataStoreHelper
Este proveedor requiere un alias de autenticación válido.
Se requieren las siguientes propiedades:- serverName: la dirección TCP/IP o nombre de host del servidor Informix.
- portNumber: el número de puerto TCP/IP donde se encuentra el servidor Informix.
- databaseName: nombre de la base de datos desde la que el origen de datos obtiene las conexiones. Ejemplo: Sample.
Avoid trouble: No puede utilizar los orígenes de datos Informix XA con bases de datos ANSI si las sentencias SQL se emiten en transacciones locales y no en transacciones globales. Este caso de ejemplo se puede producir en el código de la aplicación o en un componente del servidor de aplicaciones, como un planificador. Se puede registrar el siguiente error si se experimenta este problema:
gotchajava.sql.SQLException: Already in transaction. at com.informix.util.IfxErrMsg.getSQLException(IfxErrMsg.java:398) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:3247) at com.informix.jdbc.IfxSqli.E(IfxSqli.java:3556) at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2382) at com.informix.jdbcx.IfxXASqli.receiveMessage(IfxXASqli.java:120) at com.informix.jdbc.IfxSqli.X(IfxSqli.java:7926) at com.informix.jdbc.IfxSqli.a(IfxSqli.java:854) at com.informix.jdbc.IfxSqli.executeCommand(IfxSqli.java:749) at com.informix.jdbc.IfxResultSet.b(IfxResultSet.java:293) at com.informix.jdbc.IfxStatement.c(IfxStatement.java:1269) at com.informix.jdbc.IfxStatement.b(IfxStatement.java:423) at com.informix.jdbc.IfxStatement.executeUpdate(IfxStatement.java:277) at com.informix.jdbc.IfxSqliConnect.setTransactionIsolation(IfxSqliConnect.java:2565)