Problema

Es posible que se produzcan errores por falta de memoria (OOM) en una instalación llave en mano de JBoss de AdobeLiveCycle ES Update 1 (Service Pack 2) o en el manual de JBoss con la instalación de MySQL. Este problema está relacionado con la versión del controlador JDBC de MySQL y la configuración de conexión de las fuentes de datos.

Precaución: Esta actualización recomienda encarecidamente que cierre los servicios JBoss y MySQL antes de ejecutar el instalador de Service Pack 2 (como se indica en las instrucciones de instalación).

Razón

En LiveCycle ES Update 1, se ha introducido la comprobación de conexión para la fuente de datos IDP_DS. Debido a la forma en que los controladores JDBC de MySQL realizan la comprobación de la conexión antes de la versión 3.22.1, y a la forma en que JBoss gestiona el conjunto de resultados de validación, se está utilizando memoria de pila con el controlador JDBC, lo que provoca la apertura de varios conjuntos de resultados. Puesto que el controlador JDBC instalado como parte de la instalación llave en mano es la versión 3.1.12, debe realizar las tareas descritas en este artículo.

Solución

Debe instalar la versión 5.1.6 del controlador JDBC para reducir el número de conjuntos de resultados abiertos y resolver así los problemas de falta de memoria. Además, debe modificar la fuente de datos y la configuración de JVM.

Obtención e instalación del controlador JDBC

Esta sección describe las tareas necesarias para obtener e instalar el controlador JDBC de MySQL apropiado.

Para obtener e instalar el controlador para JBoss sin llave en mano:



Nota:
En JBoss llave en mano, esta tarea la realiza el instalador de LiveCycle ES y no es necesaria.

  1. Localice y elimine el archivo mysql-connector-java-3.1.12-bin.jar en el directorio [JBoss_root]\server\all\lib. La ubicación predeterminada es C:\Adobe\LiveCycle8.2\jboss\server\all\lib.
  2. Localice y copie el archivo [LiveCycleES_root]\patch\SP2\mysql-connsctor-java-5.1.6-bin.jar en el directorio [JBoss_root]\server\all\lib.

Cambio en la configuración de la fuente de datos

La configuración de la fuente de datos, tal y como se define en el archivo adobe-ds.xml, está pensada para una carga pesada con muchas conexiones simultáneas y un largo tiempo de espera de conexión inactiva (10 minutos). Esto da como resultado un gran número de declaraciones preparadas almacenadas en la caché de la pila. La reducción del tiempo de espera de la conexión inactiva, el número máximo de conexiones abiertas y el tamaño de la caché de las declaraciones preparadas para IDP_DS y EDC_DS resultará en una reducción de la memoria de pila asignada a las conexiones JDBC.

Para modificar la configuración de la fuente de datos:

  1. Localice y abra el archivo adobe-ds.xml en un editor. De forma predeterminada, se encuentra en C:\Adobe\LiveCycle8.2\jboss\server\all\deploy.
  2. Localice la línea <idle-timeout-minutes>10</idle-timeout-minutes> y cambie el valor de 10 a 1.



    Nota:
    Modifique este valor para las definiciones de IDP_DS y EDC_DS.

     

  3. En la definición IDP_DS, localice <max-pool-size> y cambie el valor a 20.
  4. En la definición EDC_DS, localice <max-pool-size> y cambie el valor a 10.



    Nota:
    Si el número de solicitudes de gestión de derechos es alto, puede mantener el valor predeterminado para EDC_DS en 20.

     

  5. Para las definiciones IDP_DS y EDC_DS, localice <prepared-statement-cache-size> y cambie ambos valores a 20.



    Nota:
    La configuración de este valor reduce la memoria utilizada por la caché y puede que sea necesario ajustarla en función de la carga de transacciones de su sistema.

Cambio en la configuración de JVM

La instalación llave en mano de JBoss establece una serie de argumentos de JVM en el archivo run.bat y en la definición de servicio de JBoss para Adobe LiveCycle ES. Después de actualizar el controlador JDBC, puede modificar el archivo run.bat.

Para modificar el archivo run.bat:

  1. En un editor de texto, abra el archivo run.bat ubicado en C:\Adobe\LiveCycle8.2\jboss\bin.
  2. Elimine los siguientes argumentos:

    -XX:NewSize=500 -XX:MaxNewSize=500 -XX:SurvivorRatio=6

    Si los servicios de contenido no están instalados, el valor de PermSize puede reducirse a 128 MB.

  3. Localice el ajuste XX:PermSize y cambie el valor a 128M.
  4. Guarde el archivo y ciérrelo.

Para modificar la definición de servicio de JBoss para Adobe LiveCycle ES, debe desinstalar y volver a instalar el servicio con los nuevos argumentos de JVM especificados.

Cambio en la configuración de JBossService

El servidor JBoss se configura usando un archivo en lote InstallJBossService.bat, que se crea durante la instalación del sistema. Durante la configuración llave en mano de LiveCycle, la compatibilidad de LiveCycle PDF Generator ES con la conversión de documentos nativos es una función opcional. El archivo por lotes variará ligeramente, dependiendo de si ha activado esta función.

Si durante la instalación eligió incluir esta función, habrá introducido un nombre de usuario y una contraseña en la configuración de LiveCycle. Necesitará utilizar este nombre de usuario y contraseña para completar la reinstalación del servicio JBoss.

Para desinstalar y volver a instalar el servicio JBoss para Adobe LiveCycle ES:

  1. En un editor de texto, abra el archivo InstallJBossService.bat ubicado en C:\Adobe\LiveCycle8.2\jboss.
  2. Elimine los siguientes argumentos (Nota: en JBoss Turnkey, esta tarea la realiza el programa de instalación de LiveCycle ES y este paso no es necesario.):



    -XX:NewSize=500 -XX:MaxNewSize=500 -XX:SurvivorRatio=6

    Si los servicios de contenido no están instalados, el valor de PermSize puede reducirse a 128 MB.

  3. (Opcional) Localice la configuración XX:PermSize y modifique el valor a 128M.
  4. Compruebe si la última parte del archivo .bat contiene -user %1 -password %2. Si es así, se ha configurado la conversión de documentos nativos y tendrá que introducir el nombre de usuario y la contraseña cuando vuelva a instalar el servicio.



    Nota:
    Este no es el usuario de servicio de JBoss, sino las credenciales de usuario de la cuenta utilizada para instalar el software de aplicación nativo (como Microsoft Office).

     

  5. Guarde el archivo y ciérrelo.



    Nota: Necesitará el nombre de usuario y la contraseña que utiliza el servicio. Para encontrar el nombre de usuario, abra el panel de control de Servicios, haga clic con el botón derecho del ratón en JBoss para Adobe LiveCycle ES,
    seleccione Propiedades en el menú y seleccione la pestaña Inicio de sesión. Se debe utilizar la misma combinación de nombre de usuario y contraseña que durante la instalación original.

     

  6. En el panel de control de Servicios, detenga el servicio JBoss para Adobe LiveCycle ES.
  7. Compruebe que el servicio no se está ejecutando en el panel de control de Servicios o introduciendo el siguiente comando:

    JBossService -estado "Jboss para Adobe LiveCycle ES"

    El mensaje resultante indicará que el servicio se ha detenido.

  8. Desde la línea de comandos, cambie al directorio C:\Adobe\LiveCycle8.2\jboss e introduzca el siguiente comando para desinstalar el servicio:

    JBossService -desinstalar "Jboss para Adobe LiveCycle ES"
  9. Una vez desinstalado el servicio, reinstálelo ejecutando el archivo InstallJbossService.bat modificado.
  10. Si está habilitada la conversión de documentos nativos, especificará el nombre de usuario y la contraseña introduciendo el siguiente comando:

    InstallJBossService [dominio\nombre de usuario][contraseña]

    Donde [dominio\nombre de usuario] y [contraseña] son las credenciales utilizadas durante la instalación original. Si el ID es un usuario local, se especificará utilizando la sintaxis NOMBRE DEL EQUIPO\NOMBRE DE USUARIO. Un ID de inicio de sesión de dominio debe especificarse como DOMINIO\NOMBRE DE USUARIO.

  11. Compruebe que el servicio se está ejecutando en el panel de control de Servicio o introduciendo el siguiente comando:

    JBossService -status "Jboss for Adobe LiveCycle ES"