Entorno de ejecución para rutinas Java

Para las rutinas Java, el procedimiento de inicio del espacio de direcciones de procedimiento almacenado contiene una sentencia DD JAVAENV. Esta declaración especifica un conjunto de datos que contiene opciones de tiempo de ejecución de Language Environment® para las rutinas que se ejecutan en el espacio de direcciones del procedimiento almacenado.

Cree el conjunto de datos para las opciones de tiempo de ejecución con las características enumeradas en la tabla siguiente:
Opción Valor
Asignación primaria de espacio 1 bloque
Asignación secundaria de espacio 1 bloque
Formato de registro VB
Longitud de registro 255
Tamaño de bloque 4096
Después de crear el conjunto de datos, edítelo para insertar una cadena de opciones de Entorno de idioma, que tiene este formato:
Read syntax diagramSkip visual syntax diagramXPLINK(ON),STACK,STACK64,ENVAR(,"environment-variable=setting"),MSGFILE(ddname,recfm,lrecl,blksize,NOENQENQ)

La longitud máxima de la cadena de opciones de tiempo de ejecución del entorno de lenguaje en un conjunto de datos JAVAENV para procedimientos almacenados de Java es de 245 bytes. Si sobrepasa la longitud máxima, DB2 truncará el contenido, pero no emitirá un mensaje. Si escribe el contenido del conjunto de datos JAVAENV en más de una línea, DB2 concatena las líneas para formar la serie de opciones de tiempo de ejecución. La serie de opciones de tiempo de ejecución no puede contener blancos iniciales ni blancos de cola. En la serie, solamente se permiten los blancos que sean válidos dentro de una opción.

Si la lista de variables de entorno es muy larga y el contenido de JAVAENV supera los 245 bytes, puede poner la lista de variables de entorno en un conjunto de datos por separado en un archivo independiente, y utilizar la variable de entorno _CEE_ENVFILE para apuntar a ese archivo.

A continuación se proporcionan las descripciones de los parámetros:
_CEE_ENVFILE
Especifica un z/OS® UNIX System Services conjunto de datos que contiene algunos o todos los ajustes de las variables de entorno.

Utilice el parámetro _CEE_ENVFILE si la longitud de la serie de la variable de entorno hace que la longitud total del contenido de JAVAENV sobrepase los 245 bytes, que es el límite de DB2 para el contenido de JAVAENV.

El conjunto de datos debe ser de longitud variable. El formato de los valores de variable de entorno en este conjunto de datos es:
environment-variable-1=setting-1
environment-variable-2=setting-2environment-variable-n=setting-n

Puede especificar algunos de los valores de las variables de entorno como argumentos de ENVAR y colocar algunos de los valores en este conjunto de datos, o también puede colocar todos los valores de las variables de entorno en este conjunto de datos.

Por ejemplo, para usar el archivo /u/db2c10/javasp/jspnolimit.txt para la configuración de variables de entorno, especifique:
_CEE_ENVFILE=/u/db2c10/javasp/jspnolimit.txt
ENVAR
Establece los valores iniciales para las variables de entorno especificadas. Las variables de entorno que puede que tenga que especificar son:
CLASSPATH
Cuando prepare sus rutinas Java, si no coloca sus clases de rutina en archivos JAR, incluya los directorios que contienen esas clases. Por ejemplo:
CLASSPATH=.:/U/DB2RES3/ACMEJOS 
No incluya los directorios de los archivos JAR de JDBC o el JDK en la variable CLASSPATH. Si utiliza un archivo DB2JccConfiguration.properties, debe incluir el directorio que contiene ese archivo en la variable CLASSPATH.
DB2_BASE
El valor de DB2_BASE es el directorio de nivel más alto en el conjunto de directorios HFS que contienen Db2 for z/OS código.
Por ejemplo:
DB2_BASE=/usr/lpp/db2c10/base
El valor predeterminado es /usr/lpp /db2 c10 /base.
JAVA_HOME
Esta variable de entorno indica Db2 que el entorno WLM es para rutinas Java. El valor de JAVA_HOME es el directorio de nivel más alto en el conjunto de directorios que contienen el SDK para Java. Por ejemplo:
JAVA_HOME=/usr/lpp/java/IBM/J6.0
JCC_HOME
El valor de JCC_HOME es el directorio de nivel más alto en el conjunto de directorios que contienen el controlador JDBC. Por ejemplo:
JCC_HOME=/usr/lpp/db2c10/jdbc

JCC_HOME debe establecerse.

JDBCSTD
Especifica qué versión de IBM® Data Server Driver for JDBC and SQLJ que utilizan las rutinas Java. Los valores posibles son:
3
Las rutinas Java utilizan la versión del controlador que admite JDBC 3.0.
4
Las rutinas Java utilizan la versión del controlador que admite JDBC 4.0.

Para ejecutar varios procedimientos almacenados de Java simultáneamente en una JVM de 64 bits, debe establecer JDBCSTD en 4.

JVM_DEBUG_PORTRANGE
Esta variable de entorno especifica un rango de puertos en los que la JVM está a la escucha para las conexiones de depuración, con el formato número-puerto-inferior::número-puerto-superior. El valor por omisión es el rango que comprende los puertos 8000 a 8050. Por ejemplo:
JVM_DEBUG_PORTRANGE=8051::8055
Especifique JVM_DEBUG_PORTRANGE solo para entornos WLM que se utilizan para depurar rutinas Java.
JVMPROPS
Esta variable de entorno especifica el nombre de un z/OS UNIX System Services archivo que contiene opciones de inicio para la JVM en la que se ejecuta el procedimiento almacenado. Por ejemplo:
JVMPROPS=/usr/lpp/java/properties/jvmsp
El siguiente ejemplo muestra el contenido de un archivo de opciones de inicio que puede utilizar para una JVM en la que se ejecutan procedimientos almacenados de Java:
  # Properties file for JVM for Java stored procedures
  # Sets the initial size of middleware heap within non-system heap
  -Xms64M

  # Sets the maximum size of nonsystem heap
  -Xmx128M

  #initial size of system heap
  -Xinitsh512K
Para obtener información sobre las opciones de inicio de JVM, consulte IBM SDK de 31 y 64 bits para z/OS, Java 2 Technology Edition, versión 5 SDK y Guía del usuario del entorno de ejecución, disponible en:
http://www.ibm.com/servers/eserver/zseries/software/java
Pulse el enlace "Reference Information".
LC_ALL
Modifique LC_ALL para cambiar el entorno local de modo que se utilicen las categorías de entorno local cuando cada variable de entorno correspondiente al entorno local contenga información sobre éste. Este valor debe corresponderse con el CCSID del subsistema DB2 en el que se ejecutan los procedimientos almacenados. Por ejemplo:
LC_ALL=En_US.IBM-037
TZ
Modifique TZ para cambiar la zona horaria local. Por ejemplo:
TZ=PST08
El valor por omisión es GMT (UTC).
USE_LIBJVM_G
Especifica si se utiliza la versión de depuración de la JVM en lugar de la versión por omisión no de depuración de la JVM. La versión de depuración de la JVM está en la biblioteca de enlaces dinámicos libjvm_g. Si no se especifica USE_LIBJVM_G, o su valor no es la serie en mayúsculas YES, se utiliza la versión no de depuración de la JVM. Por ejemplo, USE_LIBJVM_G=NO hace que se utilice la versión no de depuración de la JVM.

Si USE_LIBJVM_G=YES, la variable de entorno JVMPROPS debe especificar un archivo que contenga las opciones de inicio de la JVM. Ese archivo debe contener la opción de inicio -Djava.execsuffix=_g.

Especifique USE_LIBJVM_G=YES solo bajo la dirección del Soporte de Software de IBM.

WORK_DIR
Modifique WORK_DIR para cambiar el destino por omisión de la salida de STDOUT y STDERR.
MSGFILE
Especifica el nombre DD de un conjunto de datos en el que Language Environment coloca diagnósticos en tiempo de ejecución. Todos los subparámetros del parámetro MSGFILE son opcionales. El valor por omisión es
MSGFILE(SYSOUT,FBA,121,0,NOENQ)
Si especifica un nombre de conjunto de datos en la sentencia JSPDEBUG del procedimiento de inicio de espacio de direcciones de procedimiento almacenado, debe especificar JSPDEBUG como primer parámetro. Si el valor de NUMTCB en el procedimiento de inicio de espacio de direcciones de procedimiento almacenado es mayor que 1, debe especificar ENQ como quinto subparámetro. Las opciones de tiempo de ejecución de Language Environment contienen información completa sobre MSGFILE.

No especifique el parámetro MSGFILE en un entorno de 64 bits.

STACK or STACK64
Controla la asignación del almacenamiento de pila de una hebra. Especifique STACK en un entorno de 31 bits. Especifique STACK64 en un entorno de 64 bits.
XPLINK(ON)
Provoca la inicialización del entorno XPLINK. Esta opción se debe especificar para un entorno de 31 bits y no se debe especificar para un entorno de 64 bits.

El ejemplo siguiente muestra el contenido de un conjunto de datos JAVAENV.

ENVAR("JCC_HOME=/usr/lpp/db2c10/jdbc",
"JAVA_HOME=/usr/lpp/java160/J6.0",
"WORK_DIR=/u/db2c10/tmp"),
MSGFILE(JSPDEBUG,,,,ENQ)

Para obtener información sobre las variables de entorno relacionadas con las configuraciones regionales, consulte la Guía de programación de z/OS C/C++.