Adquisición de la conexión de base de datos para programas de utilidad y tareas Ant

Los programas de utilidad de HCL Commerce y las tareas Ant se actualizan para hacer referencia a una sola clase a fin de configurar la adquisición de una conexión de base de datos. Este método de conexión de base de datos unificada garantiza que cada programa de utilidad y tarea Ant pueda hacer referencia a esta clase para adquirir una conexión de base de datos, independientemente del controlador JDBC que una base de datos utiliza.

De forma predeterminada, puede especificar los parámetros de conexión para una base de datos desde la línea de mandatos, o bien el programa de utilidad puede construir los parámetros. Con este método de conexión unificada, estas opciones para especificar la base de datos para utilizarla con un programa de utilidad no se modifican. Puede seguir registrando todas las conexiones de base de datos que un programa de utilidad realiza. Para establecer dónde se deben crear los archivos de registro, utilice el elemento logoutput como subelemento de la configuración database-type. Con esta configuración de registro, el archivo de registro registra las especificaciones de la base de datos que son de entrada para establecer una conexión de base de datos para un programa de utilidad. Una vez que se haya recopilado un conjunto de parámetros de entrada, puede revisar los parámetros especificados y configurar potencialmente las alteraciones temporales para controlar cómo conectar los programas de utilidad a la base de datos. Por ejemplo, puede alterar temporalmente la especificación de base de datos para asegurarse de que los programas de utilidad sólo utilizan un URL JDBC específico.

OraclePuede configurar la clase AllDBConnector para utilizar un Oracle Wallet con el objetivo de autenticar las credenciales de un usuario y conectarse a una base de datos Oracle. Mediante la configuración de la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, puede hacer que el proceso de conexión de base de datos sea más seguro para los programas de utilidad de HCL Commerce. Para obtener más información sobre esta configuración, consulte Configuración de conexión de base de datos Oracle para programas de utilidad para autenticar usuarios con Oracle Wallet.

Configuración de la adquisición de conexión de la base de datos

Las propiedades de configuración para este método de conexión de base de datos unificada se especifican en el archivo siguiente:
  • LinuxAIXFor IBM i OS operating systemWC_installdir/xml/config/alldbconnector.xml
  • WindowsWC_installdir/xml\config\alldbconnector.xml
  • HCL Commerce DeveloperWCDE_installdir\xml\config\alldbconnector.xml
Para revisar el esquema XML para ayudarle a comprender cómo los programas de utilidad o las tareas Ant establecen una conexión de base de datos, vaya a la vía de acceso siguiente y abra el archivo para su revisión:
  • LinuxAIXFor IBM i OS operating systemWC_installdir/xml/config/alldbconnector.xsd
  • WindowsWC_installdir/xml\config\alldbconnector.xsd
  • HCL Commerce DeveloperWCDE_installdir\xml\config\alldbconnector.xsd

Las propiedades de configuración de conexión de base de datos están establecidas como elementos de par nombre-valor dentro del archivo de configuración XML alldbconnector.xml. Estas propiedades están establecidas como propiedades globales y como parte de las configuraciones de tipo de base de datos específicas. Cuando se establece una conexión de base de datos, la conexión utiliza los valores de configuración para el identificador de entrada de base de datos específico. Si no existe ninguna configuración para este identificador, la conexión utiliza las propiedades de configuración global.

El código siguiente proporciona un compendio del esquema de archivo XML de configuración:
<alldbconnector>
  <db2 />
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>
Para cambiar el modo en que los programas de utilidad adquieren una conexión de base de datos, configure las propiedades en el archivo XML de configuración. Para cada uno de los 5 tipos de datos soportados, los elementos siguientes se pueden incluir dentro de cada elemento de tipo de base de datos:
<drivertype> (0 or 1 time) (only under the <oracle> element)
<jdbcdriver> (0 or 1 time)
<jdbcurl> (0 or 1 time)
<logoutput> (0 or 1 time)
<property> (0 or more times)
<override> (0 or more times)

Donde:

Oracledrivertype
OracleEl tipo de controlador Oracle que un programa de utilidad utiliza para establecer una conexión de base de datos. Un programa de utilidad utiliza este elemento de configuración cuando la especificación de entrada de una base de datos tiene el formato siguiente: server:port/service o server:port:sid
Si se establece este elemento se controla si el programa de utilidad utiliza el controlador Oracle thin u oci. Los programas de utilidad solo utilizan este elemento cuando se especifica el elemento en el elemento <oracle>. El elemento drivertype no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:
valor
Necesario. El tipo de clase de controlador Oracle que se utilizará. El valor predeterminado es 'thin'. El otro valor aceptado es 'oci'.
enabled
Opcional. Habilita el elementodrivertype. Puede establecer uno de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
jdbcdriver
La clase de controlador que un programa de utilidad utiliza para establecer una conexión de base de datos. Utilice este elemento para especificar una clase de controlador diferente para un programa de utilidad que se utilizará para establecer una conexión de base de datos. El elemento jdbcdriver no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:
valor
Necesario. El nombre completo del controlador JDBC. No incluya el sufijo .class en este nombre.
habilitado
Opcional. Habilita el elementojdbcdriver. Puede establecer uno de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
jdbcurl
El URL JDBC que un programa de utilidad utiliza para adquirir una conexión de base de datos. El elemento jdbcurl no admite la inclusión de un subelemento. No utilice este elemento como un subelemento directo de un elemento de tipo de base de datos, como <oracle> o<db2> . Si no utiliza este elemento como un subelemento en este nivel, el elemento fuerza a todas las conexiones de base de datos a conectarse a la misma base de datos. Puede que este comportamiento no sea el correcto para todos los programas de utilidad, tales como el programa de utilidad stagingprop. Si desea utilizar este elemento, incluya el elemento como un subelemento dentro de un elemento override. Para configurar este elemento, utilice los atributos de elemento siguientes:
valor
Necesario. La vía de acceso del URL JDBC que un programa de utilidad utiliza para adquirir una conexión de base de datos.
habilitado
Opcional. Habilita el elementojdbcurl. Puede establecer uno de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
El fragmento de código siguiente configura el elemento jdbcurl. Esta configuración garantiza que todos los programas de utilidad en una base de datos DB2 para Linux, UNIX y Windows se conectan a la base de datos 'mall' en el servidor 'localhost'.
<alldbconnector>
  <db2>
    <property name="currentSchema" value="MYSCHEMA" />
    <property name="currentQueryOptimization" value="0" enabled="no" />
    <logoutput value="standardout" />
    <jdbcurl value="jdbc:db2://localhost:50000/mall"; />
  </db2>
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>
logoutput
Especifica una corriente de salida donde todos los diagnósticos registrados por la clase pueden generar la salida en un archivo de registro. El elemento logoutput no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:
valor
Necesario. La vía de acceso donde un programa de utilidad crea el registro de diagnóstico. Los valores aceptados para este elemento son stdout, standardout o una vía de acceso de archivo absoluta. Las vías de acceso absolutas hacen que el programa de utilidad ignore el elemento logoutput. Los fragmentos de código siguientes muestran el valor de una vía de acceso absoluta para el elemento logoutput:
<!-- for windows -->
<logoutput value="f:\some_directory\db2-connection-diagnostics.log" enabled="no" />

<!-- for non-windows -->
<logoutput value="/some_directory/db2-connection-diagnostics.log" enabled="no" />
habilitado
Opcional. Habilita el elementologoutput. Puede establecer uno de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
El fragmento de código siguiente muestra la configuración del elemento logoutput para que tenga un valor establecido en standardout. El valor standardoutgarantiza que todos los diagnósticos para cualquier conexión que esté establecida en una base de datos DB2 para Linux, UNIX y Windows se imprimirá en la corriente de salida estándar.
<alldbconnector>
  <db2>
    <property name="currentSchema" value="MYSCHEMA" />
    <property name="currentQueryOptimization" value="0" enabled="no" />
    <logoutput value="standardout" />
  </db2>
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>
property
Utilice este elemento para especificar más propiedades de configuración de pares nombre-valor antes de que el programa de utilidad que efectúa la llamada adquiera las propiedades de conexión. Si el atributo enabled no está establecido en yes, el programa de utilidad que efectúa la llamada ignora la propiedad. El elemento property no admite la inclusión de un subelemento. Para configurar este elemento, utilice los atributos de elemento siguientes:
name
Necesario. El nombre de la propiedad.
valor
Necesario. El valor correspondiente para la propiedad.
tipo
Opcional. El tipo de datos del valor de la propiedad. El valor predeterminado es java.lang.String. Otros valores aceptables son java.lang.Integer y java.lang.Boolean.
habilitado
Opcional. Habilita el elemento property. Puede establecer cualquiera de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
scope
Indica si la propiedad es una propiedad system o una propiedad connection.
sistema
La propiedad es una propiedad del sistema.
connection
La propiedad es una propiedad connection. El valor predeterminado.

OraclePor ejemplo, para configurar la clase AllDBConnector y autenticar a los usuarios con un Oracle Wallet cuando se utiliza el tipo de controlador de Oracle Thin, debe establecer una propiedad oracle.net.tns.admin como una propiedad del sistema. Al establecer esta propiedad como una propiedad del sistema, el controlador Thin de Oracle puede recuperar entradas de TNS del archivo de configuración tnsnames.ora para el cliente de la base de datos.tnsnames.ora La clase AllDBConnector y el Oracle Wallet necesitan estas entradas para autenticar a los usuarios y establecer una conexión de base de datos.

El fragmento de código siguiente muestra la configuración de dos elementos property. Estas propiedades garantizan que las conexiones a una base de datos DB2 para Linux, UNIX y Windows que un programa de utilidad solicita tienen el valor MYSCHEMA establecido para la propiedad currentSchema. La propiedad currentQueryOptimization no está habilitada, por consiguiente, el programa de utilidad llamante ignora esta propiedad.
<alldbconnector>
  <db2>
    <property name="currentSchema" value="MYSCHEMA" />
    <property name="currentQueryOptimization" value="0" enabled="no" />
  </db2>
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>
ignoreUserPass
Indica que el nombre de usuario y la contraseña que ha especificado un usuario se va a eliminar del proceso de conexión de la base de datos cuando un programa de utilidad está realizando la conexión a una base de datos. Incluya este elemento cuando configure la clase AllDBConnector para autenticar usuarios con un proceso diferente.

OraclePor ejemplo, utilice este elemento cuando configure la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet. Cuando configure la clase para autenticar a los usuarios con un Oracle Wallet, el nombre de usuario y la contraseña que se incluyen en el programa de utilidad de línea de mandatos ya no son necesarios.

security
Indica que la clase AllDBConnector necesita realizar una llamada a la API Security.addProvider(...) para recuperar un proveedor de seguridad especificado, autenticar el acceso del usuario y establecer una conexión de base de datos. Para configurar este elemento, utilice el atributo de elemento siguiente:
providername
El nombre completo del proveedor de seguridad. Si las clases de proveedor de seguridad no están incluidas en ningún archivo JAR que la clase AllDBConnector carga de forma predeterminada, debe configurar la clase AllDBConnector para cargar los archivo JAR del proveedor de seguridad utilizando el elemento jar.
OraclePor ejemplo, para configurar la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, debe especificar el proveedor de seguridad de Oracle adecuado.
<security providername="oracle.security.pki.OraclePKIProvider" />
jar
Indica que el proceso de conexión de base de datos es utilizar la clase AllDBConnector para intentar cargar un archivo JAR especificado que es necesario para establecer correctamente una conexión de base de datos.AllDBConnector Al cargar archivos JAR, AllDBConnector garantiza que todas las clases que son necesarias para establecer una conexión de base de datos están disponibles en la clase del otro. Para configurar este elemento, utilice el atributo de elemento siguiente:
path
La vía de acceso del sistema de archivos del archivo JAR que la clase AllDBConnector va a cargar.
Si necesita un proveedor de seguridad que no está disponible en un archivo JAR que se carga de forma predeterminada, configure la clase AllDBConnector para cargar el archivo JAR para su proveedor de seguridad.
OraclePor ejemplo, para configurar la clase AllDBConnector para autenticar a los usuarios con un Oracle Wallet, debe cargar archivos JAR de Oracle. El fragmento de código siguiente muestra cómo configurar la clase AllDBConnector para cargar estos archivos JAR:
<jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\oraclepki.jar" />
<jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\osdt_cert.jar" />
<jar path="c:\oracle\product\11.2.0\dbhome_1\jlib\osdt_core.jar" />
override
Proporciona la posibilidad de alterar temporalmente los parámetros de conexión de entrada especificados. El elemento override acepta los mismos subelementos que los elementos de tipo de base de datos padre, excepto que el elemento override no puede incluir un subelemento override anidado.
Para configurar este elemento, utilice los atributos de elemento siguientes:
identifier
Necesario. Nombre identificativo para la configuración de alteración temporal. Asegúrese de que el identificador sea exclusivo entre las configuraciones de alteración temporal en el archivo de configuración. Cuando un parámetro de entrada especificado coincide con el identificador de una configuración de alteración temporal, los valores de alteración temporal se utilizan para sustituir los parámetros de entrada especificados.
habilitado
Opcional. Habilita la configuración override. Puede establecer cualquiera de los valores siguientes para este elemento:
Habilita el elemento. El valor predeterminado.
No
Inhabilita el elemento.
includeusers
Controla si override se aplica únicamente a usuarios específicos. Utilice una lista separada por comas para incluir a varios usuarios.
excludeusers
Controla si la configuración override se aplica a usuarios específicos. Utilice una lista separada por comas para excluir a varios usuarios.
Nota: Si el elemento override no incluye los atributos includeusers o excludeusers, el elemento override se aplica a todos los usuarios cuando el valor override de la configuración identifier coincide con la especificación de base de datos que un usuario incluye en el mandato para ejecutar un programa de utilidad.
Si varios elementos override están configurados con el mismo identificador, se utilizan las reglas siguientes para determinar qué configuración se utilizará:override
  • Si existen varios elementos override con los mismos atributos, se utiliza la configuración del primer elemento.override
  • Si existen varios elementos override con diferentes atributos, se utiliza la configuración del primer elemento que coincide con las condiciones siguientes.override Estas condiciones se comprueban en orden:
    • La configuración override incluye el usuario que intenta establecer una conexión de base de datos en los atributos includeusers.
    • La configuración override no incluye los atributos includeusers o excludeusers.
    • La configuración override tiene un atributo excludeusers que no tiene el usuario especificado.
    Si un elemento ignoreuserpass está incluido en una de las alteraciones temporales, el elemento se aplica después de que se determine la configuración override adecuada que se utilizará.
El fragmento de código siguiente especifica una configuración de alteración temporal:
<alldbconnector>
  <db2>
    <property name="currentSchema" value="MYSCHEMA" />
    <property name="currentQueryOptimization" value="0" enabled="no" />
    <logoutput value="standardout" />
    <jdbcurl value="jdbc:db2://localhost:50000/mall"; />

    <override identifier="prodmall">
      <jdbcurl value="jdbc:db2://prodserver:50000/mall" />
      <property name="currentSchema" value="PRODSCMA" />
    </override>
  </db2>
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>
Esta configuración altera temporalmente las propiedades de conexión para que todas las conexiones a una base de datos DB2 para Linux, UNIX y Windows utilicen los parámetros siguientes:
  • El valor MYSCHEMA de la propiedad currentSchema.
  • El valor jdbc:db2://localhost:50000/mall de la propiedad jdbcurl.
Si se especifica el parámetro de entrada prodmall, la configuración de alteración temporal garantiza que no se aplique ningún elemento property o jdbcurl del tipo de base de datos principal. En su lugar, el programa de utilidad llamante utiliza el valor jdbc:db2://prodserver:50000/mall para el elemento jdbcurl, y el valor PRODSCMA se utiliza para el elemento currentSchema. La configuración de alteración temporal no altera temporalmente el valor del elemento logoutput en la configuración de nivel de tipo de base de datos. Si no incluye un elemento logoutput en la configuración de alteración temporal, el programa de utilidad llamante crea un registro de diagnóstico en las vías de acceso establecidas en cada elemento logoutput.

Alteraciones temporales de propiedades de configuración.

El fragmento de código siguiente especifica los parámetros de entrada para conectar el programa de utilidad stagingprop a una base de datos. Estos parámetros establecen los valores para los parámetros -sourcedb y -destdb:
-sourcedb mall 
-sourcedb localhost:50000/mall 
-sourcedb jdbc:db2://localhost:50000/mall
Para configurar alteraciones temporales para estos parámetros, utilice los valores de parámetro 'mall', 'localhost:5000/mall' y 'jdbc:db2://localhost:50000/mall' como valor para los elementos del identificador de elementos de configuración de alteración temporal. Dentro de la configuración de alteración temporal, puede establecer parámetros de conexión personalizados o un URL JDBC diferente. Si la alteración temporal no existe o no contiene un elemento de URL JDBC, el programa de utilidad construye el URL JDBC de los parámetros de entrada especificados. Sin embargo, si el URL JDBC existe en un elemento de alteración temporal aplicable, el programa de utilidad stagingprop utiliza el URL JDBC configurado en lugar de construir un URL a partir de los parámetros de entrada.
Nota: En función de los requisitos de rendimiento, es posible que el sistema utilice un servidor de base de datos de 64 bits. Si el sistema utiliza un servidor de base de datos de 64 bits con una máquina virtual Java de 32 bits (JVM), es posible que determinados programas de utilidad y procesos de instalación fallen. Por ejemplo, los procesos de utilidad puede fallar si el único parámetro de entrada de la conexión de base de datos que el programa de utilidad o el proceso especifica al intentar establecer una conexión de base de datos es el nombre de la base de datos. En estas situaciones, el problema puede resolverse configurando una alteración temporal con el nombre de la base de datos como valor para el identificador de alteración temporal y utilizando un subelemento jdbc.
Por ejemplo, determinados tipos de base de datos, tales como una base de datos DB2 para Linux, UNIX y Windows, la especificación del nombre de base de datos o la especificación URL JDBC de tipo 2 obliga a utilizar el controlador JDBC tipo 2. La utilización de un controlador JDBC de tipo 2 requiere cargar las bibliotecas nativas. El intento de cargar una biblioteca nativa puede fallar cuando la JVM es de 32 bits y el servidor de bases de datos es de 64 bits. La utilización de bibliotecas para buscar el nombre del servidor de base de datos y el número de puerto para construir un URL JDBC de tipo 4 también puede fallar dado que este proceso también requiere la carga de bibliotecas nativas. Puede resolver este problema configurando una alteración temporal con el nombre de base de datos como valor del identificador de alteración temporal, o bien realizando una de las tareas siguientes:
  • Instalar un cliente de 32 bits
  • Utilizar un servidor de base de datos de 32 bits
  • Utilizar una JVM de 64 bits

Soporte de DB2 pureScale

A partir de HCL Commerce Versión 7 Fixpack 8, todos los programas de utilidad de HCL Commerce soportan el uso de una base de datos de DB2 pureScale. Cuando se crea una instancia en una base de datos DB2 para Linux, UNIX y Windows pureScale, el proceso de creación de instancia añade las propiedades de conexión siguientes al origen de datos de HCL Commerce:
clientRerouteAlternateServerName=[comma separated host list]
clientRerouteAlternatePortNumber=[comma separated port list]
enableAlternateServerListFirstConnect=true
enableSysplexWLB=true
Si también se ha habilitado Gestión de contenidos, el proceso de creación de instancia también añade las propiedades al origen de datos de publicación de HCL Commerce.

Cuando crea una instancia con una base de datos DB2 pureScale, el proceso añade elementos de alteración temporal al archivo de configuración alldbconnector.xml. Los elementos de alteración temporal contienen los mismos elementos que se añaden al origen de datos de HCL Commerce e incluyen la información de URL JDBC adecuada.

Puede revisar la lista completa de propiedades de conexión que están establecidas para dar soporte a una base de datos DB2 pureScale en los destinos ConnectionPropertyConfig y CMConnectionPropertyConfig en los archivos siguientes:
  • WC_installdir\config\deployment\xml\createInstance.xml
  • WC_installdir\components\Workspaces\xml\configureWorkspaces.xml

Ejemplo

El siguiente archivo XML de configuración establece las propiedades que la clase alldbconnector utiliza para configurar cómo los programas de utilidad adquieren una conexión de base de datos. La siguiente configuración especifica alteraciones temporales para dos bases de datos que están catalogadas en un servidor de base de datos DB2 para Linux, UNIX y Windows local.

En la instancia local, la primera base de datos está catalogada como 'mall' y la segunda base de datos como 'prodmall'. El alias de 'mall' hace referencia a una base de datos local que se denomina 'mall', mientras que el alias 'prodmall' hace referencia a una base de datos remota 'mall' que se encuentra en un host, que se denomina 'prodserver'. En el host 'prodserver', el servicio de conexión remota DB2 opera en el puerto '50000'. El servidor de base de datos local está en un host que se denomina 'stagingserver'. En el host 'stagingserver', el servicio de conexión de base de datos es operativo en el puerto '50000'.

Si alguno de los parámetros de conexión que se han especificado para un programa de utilidad coinciden con las configuraciones de alteración temporal, las propiedades establecidas dentro de las configuraciones de alteración temporal se utilizan para adquirir una conexión de base de datos.

<alldbconnector>
  <db2>
    <!--
      ***
      start of overrides for local database
      ***
    -->
    
    <!-- override database name so that native library loading isn't done -->
    <override identifier="mall">
      <jdbcurl value="jdbc:db2://localhost:50000/mall"; />
      <property name="currentSchema" value="STAGING" />
    </override>
    
    <!-- override type-2 database specification to prevent native library loading -->
    <override identifier="jdbc:db2:mall">
      <jdbcurl value="jdbc:db2://localhost:50000/mall"; />
      <property name="currentSchema" value="STAGING" />
    </override>
    
    <!-- override type-4 database specification for uniformity -->
    <override identifier="stagingserver:50000/mall">
      <jdbcurl value="jdbc:db2://localhost:50000/mall"; />
      <property name="currentSchema" value="STAGING" />
    </override>
    
    <!--
      override JDBC URL for schema specification
      note that we need not have overridden that JDBC URL in this override, but let us do so anyway
    -->
    <override identifier="jdbc:db2://stagingserver:50000/mall">;
      <jdbcurl value="jdbc:db2://localhost:50000/mall"; />
      <property name="currentSchema" value="STAGING" />
    </override>
    
    <!-- we could also create overrides for localhost:50000/mall and jdbc:db2://localhost:50000/mall but perhaps that can be left as an exercise -->
    
    <!--
      ***
      end of overrides for local database
      ***
    -->
    
    <!--
      ***
      start of overrides for remote database
      ***
    -->
    
    <!-- override database name so that native library loading isn't done -->
    <override identifier="prodmall">
      <jdbcurl value="jdbc:db2://prodserver:50000/mall"; />
      <property name="currentSchema" value="PRODUCTN" />
    </override>
    
    <!-- override type-2 database specification to prevent native library loading -->
    <override identifier="jdbc:db2:prodmall">
      <jdbcurl value="jdbc:db2://prodserver:50000/mall"; />
      <property name="currentSchema" value="PRODUCTN" />
    </override>
    
    <!-- override type-4 database specification for uniformity -->
    <override identifier="prodserver:50000/mall">
      <jdbcurl value="jdbc:db2://prodserver:50000/mall"; />
      <property name="currentSchema" value="PRODUCTN" />
    </override>
    
    <!--
      override JDBC URL for schema specification
      note that we need not have overridden that JDBC URL in this override, but let us do so anyway
    -->
    <override identifier="jdbc:db2://prodserver:50000/mall">;
      <jdbcurl value="jdbc:db2://prodserver:50000/mall"; />
      <property name="currentSchema" value="PRODUCTN" />
    </override>
    
    <!--
      ***
      end of overrides for remote database
      ***
    -->
  </db2>
  <oracle />
  <derby />
  <iseries />
  <iseries_toolbox />
</alldbconnector>