En este capítulo se describen los problemas conocidos y las soluciones asociadas para el software de Sun Java System Application Server Edición Enterprise 8.1 2005Q2. Si no se especifica una plataforma concreta para un problema, significa que éste se aplica a todas las plataformas. Esta información se ha dividido como sigue:
Este apartado describe problemas conocidos relacionados con la administración, junto con las soluciones pertinentes.
En este apartado se describen los problemas conocidos relacionados con el complemento del equilibrador de carga y Apache Web Server, y las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6306784 |
La guía de administración de alta disponibilidad contiene instrucciones incorrectas para usar openssl con Apache. Solución Cuando compile y cree openssl, ejecute los siguientes comandos: cd openssl-0.9.7e config make Además, para Apache 1.3, el nombre del directorio del origen mod_ssl variará en función de la versión de Apache que se use. Por ejemplo, para Apache 1.3.33, el nombre es mod_ssl-2.8.22-1.3.33. |
6307976 |
La guía de administración de alta disponibilidad no contiene instrucciones para usar un certificado de Apache 2.0. Solución Para ejecutar la seguridad de Apache, debe usar un certificado. Para conocer cómo se obtiene un certificado de una entidad emisora de certificados, consulte la información sobre los certificados que figura en modssl FAQ. |
6308021 |
Debe iniciar Apache Web Server como root. Solución En Solaris, si Application Server se instaló como root, deberá usar Apache Web Server también como root. Las instalaciones de Java Enterprise System se realizan como root. En Apache 2.0, después de iniciarse como root, Apache cambia y se ejecuta como el usuario que se especifique. Especifique ese usuario en el archivo /conf/httpd.conf. Para realizar un inicio como root en varios sistemas, debe editar el archivo httpd.conf para especificar el grupo correcto. Sustituya la línea: Group #-1 por Group nobody Encontrará más información sobre el uso de user/group en el archivo httpd.conf. |
6308043 |
Adición a las instrucciones de uso de openssl con Apache Web Server 2.0 en Solaris. Después de instalar Apache 2.0 y el complemento del equilibrador de carga, edite ssl.conf and sll-std.conf de la siguiente forma: Sustituya la línea: <VirtualHost _default_:9191> por <VirtualHost machine_name:9191> donde machine_name es el nombre de su equipo y 9191 es el número del puerto de seguridad. |
Este apartado describe problemas conocidos relacionados con los clientes de la aplicación, junto con las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6193556 |
La biblioteca JAR incluida en el archivo del cliente de aplicación sobrescribe el archivo MANIFEST. Si cuenta con un archivo JAR de nivel superior en el cliente JAR (en este caso, reporter.jar), cuando implemente el cliente JAR, el archivo MANIFEST para dicho JAR sobrescribirá el archivo MANIFEST para el cliente JAR. Solución Ninguna por ahora. |
6373043 |
Ya no se admiten las tecnologías de contenido dinámico como, por ejemplo, CGI-bin y SHTML. Solución: En su lugar, utilice las tecnologías de servicios web y JSP. |
Este apartado describe problemas conocidos relacionados con los controladores JDBC de Sun, junto con las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6165970 |
Es posible que se bloqueen las aplicaciones que utilizan el nivel de aislamiento TRANSACTION_SERIALIZABLE con el controlador de Sun integrado para Microsoft SQL Server cuando se utiliza una instrucción preparada para actualizar, en caso de que se estén llevando a cabo dos transacciones paralelas y una de ellas se deshaga. Para definir el nivel deseado de aislamiento para una conexión, el conjunto de conexiones correspondiente debe crearse en el mismo nivel de aislamiento. Consulte la guía de administración para obtener información sobre cómo configurar los conjuntos de conexiones. Solución Ninguna por ahora. |
6170432 |
Errores de PreparedStatement. Descripción nº 1 Si una aplicación genera más de 3000 objetos PreparedStatement en una transacción, se puede producir el siguiente error con DB2: [sunm][DB2 JDBC Driver] No more available statements.. Please recreate your package with a larger dynamicSections value. Solución nº 1 Agregue las siguientes propiedades a la definición del conjunto de conexiones para que el controlador vuelva a vincular los paquetes DB2 con un valor mayor de secciones dinámicas: createDefaultPackage=true replacePackage=true dynamicSections=1000 Consulte Administration Guide para obtener información sobre cómo configurar los conjuntos de conexiones. Descripción nº 2 En relación con el error de PrepardStatement mencionado anteriormente, otro mensaje de error que se puede mostrar es: [sunm][DB2 JDBC Driver][DB2]Virtual storage or database resource is not available. Solución nº 2 Aumente el parámetro de configuración APPLHEAPSZ del servidor DB2 Un valor adecuado es 4096. Descripción nº 3 Nivel de aislamiento TRANSACTION_SERIALIZABLE. Si una aplicación utiliza un nivel de aislamiento TRANSACTION_SERIALIZABLE y emplea uno de los parámetros sugeridos anteriormente, es posible que se bloquee cuando intente obtener la conexión. Solución nº 3 Para definir el nivel deseado de aislamiento para una conexión, el conjunto de conexiones correspondiente debe crearse en el mismo nivel de aislamiento. Consulte Administration Guide para obtener más instrucciones. |
6189199 |
Surgen problemas al establecer el nivel de aislamiento con el controlador de Sun integrado para Sybase Adaptive Server.
Solución Ninguna por ahora. |
6247468 |
En Solaris 10 y Enterprise Linux 3.0, el controlador Oracle JDBC integrado en Sun no permite la creación de una conexión. Solución Defina la siguiente propiedad en el conjunto de conexiones de JDBC cuando use el origen de datos de Oracle SUN JDBC (com.sun.sql.jdbcx.oracle.OracleDataSource): <property name="serverType" value="dedicated"/> El valor de la propiedad depende del modo en que esté configurado el módulo de escucha del servidor Oracle. Si está configurado en el modo "compartido", el valor de arriba deberá cambiarse a "dedicado". |
6554602 |
A partir de la versión 10.2 de los controladores JDBC, si se tienen varios archivos jar de JDBC en CLASSPATH, es posible que se produzca una excepción, java.lang.SecurityException: Sealing violation exception. Se proporciona información detallada en el siguiente Id. de documento de Oracle: Nota: 405446 Asunto: el controlador JDBC 10.2 utiliza archivos JAR sellados y puede provocar una excepción de seguridad relacionada con una infracción de sellado. Solución: (Recomendación de Oracle) Asegúrese de que CLASSPATH incluya sólo el archivo JAR del controlador JDBC. |
En este apartado se describen los problemas conocidos relacionados con la arquitectura del conector J2EE y las soluciones asociadas.
ID del error |
Resumen |
---|---|
6188343 |
Después de reiniciar la instancia DAS, la anulación de la implementación del módulo del conector falla cuando la opción de cascada está definida en false. En esta situación, un módulo de conector independiente o integrado está implementado en DAS y los conjuntos de conexiones del conector y los recursos se crean para el módulo implementado. Después de reiniciar la instancia DAS, la anulación de la implementación del módulo del conector falla cuando la cascada se establece como false con la siguiente excepción: [#|2004-10-31T19:52:23.049-0800|INFO|sun-appserver-ee8.1|javax.enterprise.system .core|_ThreadID=14;|CORE5023: Error while unloading application [foo]|#]. Solución Use la anulación de implementación en cascada (establezca la opción cascade en true) para anular la implementación de los conectores integrados e independientes después de reiniciar la instancia DAS. |
Este apartado describe problemas conocidos relacionados con la documentación, junto con las soluciones pertinentes.
ID del error |
Resumen |
||
---|---|---|---|
Varios ID |
Incoherencias de Javadoc. Falta Javadoc o es incorrecto para varios métodos e interfaces AMX:
|
||
6265624 |
ANT integrado desencadena java.lang.NoClassDefFoundError. La siguiente excepción se desencadena en un subproceso "principal" java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher. Solución No se recomienda el uso del ANT integrado para cuestiones externas a Application Server. |
||
6486123 |
La documentación sobre cómo obtener una conexión física desde una conexión ajustada ya no es correcta. A consecuencia de otros errores (posiblemente 6295215), el código proporcionado en la sección Obtaining a Physical Connection from a Wrapped Connection de Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guide del Capítulo 11, Using the JDBC API for Database Access de Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Developer’s Guide no es correcto. En concreto, la línea siguiente:
debería indicar:
|
En este apartado se describen los problemas conocidos relacionados con la base de datos de alta disponibilidad (HADB) y las soluciones asociadas.
ID del error |
Resumen |
|||
---|---|---|---|---|
Sin ID |
Configuración de HADB con redes dobles. La configuración de HADB con redes dobles en dos subredes funciona correctamente en Solaris SPARC. Sin embargo, debido a problemas en el sistema operativo o a los controladores de red en algunas plataformas de hardware, se ha observado que las plataformas Linux y Solaris x86 no siempre gestionan correctamente las redes dobles. Esto provoca los siguientes problemas con HADB:
|
|||
Sin ID |
Falla la creación de la base de datos HADB. La creación de una base de datos nueva puede fallar con el siguiente error, que indica que hay muy pocos segmentos de memoria compartida disponibles: HADB-E-21054: System resource is unavailable: HADB-S-05512: Attaching shared memory segment with key "xxxxx" failed, OS status=24 OS error message: Too many open files. Solución Compruebe que la memoria compartida esté configurada y que la configuración esté funcionando. En concreto, en Solaris 8, consulte el /etc/system, y compruebe que el valor de la variable shmsys:shminfo_shmseg sea, como mínimo, 6 veces el número de nodos por host. |
|||
5052548 |
Hay segmentos de memoria compartida bloqueados y no se pueden eliminar. HADB 4.3-0.16 y posterior se configura para utilizar la memoria compartida privada al crearse y adjuntarse a sus segmentos de memoria compartida (utiliza el indicador SHM_SHARE_MMU ). El uso de este indicador básicamente bloquea los segmentos de memoria compartida en la memoria física e impide que se eliminen. Esto puede fácilmente provocar problemas con instalaciones en equipos finales lentos. Por tanto, si un programador tiene un equipo con 512 MB de memoria y mucho espacio de intercambio disponible al utilizar Application Server7.0 EE y, a continuación, instala 7.1 EE o posterior, tendrá problemas al configurar el clúster predeterminado clsetup, que crea dos nodos HADB, cada uno con un tamaño, devicesize, de 512, que da lugar a que no haya suficiente RAM física para soportar la memoria compartida que ambos nodos necesitan. Solución: Asegúrese de que dispone de la cantidad recomendada de memoria al ubicar de forma conjunta Application Server y HADB. Consulte Requisitos de HADB y plataformas compatibles para obtener más información. |
|||
5091280 |
hadbm set no comprueba la disponibilidad de los recursos (espacio de memoria y disco). Al aumentar el tamaño de la memoria búfer o de los dispositivos usando hadbm set,, el sistema de administración comprueba la disponibilidad de los recursos cuando se crean bases de datos o se agregan nodos, pero no comprueba si hay recursos suficientes cuando se cambia el tamaño de la memoria búfer principal o del dispositivo. Solución Compruebe si hay espacio de disco o de memoria suficiente en todos los hosts antes de aumentar los atributos de configuración devicesize o buffersize. |
|||
5091349 |
No se admiten las rutas heterogéneas para packagepath. No se puede registrar el mismo paquete de software con el mismo nombre en ubicaciones distintas y en hosts diferentes, por ejemplo:
Solución HADB no admite rutas heterogéneas en los nodos de un clúster de base de datos. Asegúrese de que el directorio de instalación de HADB (--packagepath) sea el mismo para todos los hosts. |
|||
6173886, 6253132 |
createdomain puede que falle. Si el agente de administración se está ejecutando en un host con varias interfaces de red, es posible que el comando createdomain presente errores si no están todas las interfaces de red en la misma subred:
Los agentes de administración, a menos que estén configurados de otra forma, usarán la "primera" interfaz para difusiones UDP (se entiende como "primera" interfaz el resultado de java.net.NetworkInterface.getNetworkInterfaces() ). Solución La mejor solución es indicarle al agente de administración qué subred debe utilizar (defina ma.server.mainternal.interfaces en el archivo de configuración, por ejemplo, ma.server.mainternal.interfaces=10.11.100.0). Otra opción es configurar el enrutador entre las subredes para que dirija los paquetes de difusión (el agente de administración utiliza la dirección de difusión 228.8.8.8). Antes de volver a intentarlo con una configuración nueva de los agentes de administración, puede que deba limpiar el repositorio del agente de administración. Detenga todos los agentes del dominio, y elimine todos los archivos y directorios del directorio del repositorio (se identifican mediante repository.dr.path en el archivo de configuración del agente de administración). Esta acción debe realizarse en todos los hosts antes de reiniciar los agentes con un nuevo archivo de configuración. |
|||
6190878 |
Es necesario limpiar los directorios tras la eliminación de una instancia de HADB. Una vez eliminada una instancia de HADB, fallarán los intentos siguientes de crear nuevas instancias con el comando configure-ha-cluster. El problema es que los antiguos directorios permanecen en la instancia de HADB original en ha_install_dir/rep/* y ha_install_dir/config/hadb/instance_name . Solución: Asegúrese de que elimina manualmente estos directorios tras eliminar una instancia de HADB. |
|||
6230792, 6230415 |
El inicio, la detención y la reconfiguración de HADB pueden fallar o generar bloqueos. En Solaris 10 Opteron, el inicio, la detención o la reconfiguración de HADB usando el comando hadbm pueden fallar o generar bloqueos con alguno de los siguientes errores:
Esto puede suceder si hay incoherencias al leer o escribir en un archivo (nomandevice) que esté utilizando el proceso clu_noman_srv. Este problema se puede detectar buscando los siguientes mensajes en los archivos del historial de HADB:
Solución La siguiente solución no se ha probado, puesto que no se ha reproducido el problema manualmente. Sin embargo, la ejecución de este comando para el nodo afectado debería resolver el problema.
Tenga en cuenta que se reiniciarán todos los dispositivos del nodo. También es posible que haya que detener el nodo antes de reiniciarlo. |
|||
6232140 |
El agente de administración termina con la excepción "IPV6_MULTICAST_IF failed". Cuando se inicia en un host que ejecuta Solaris 8 con varias tarjetas NIC instaladas, si hay una mezcla de tarjetas con IPv6 e IPv4 habilitados, el agente de administración puede terminar con la excepción "IPV6_MULTICAST_IF failed."." Solución Defina la variable de entorno JAVA_OPTIONS en -Djava.net.preferIPv4Stack=true como, por ejemplo:
De lo contrario, use Solaris 9 o una versión posterior que no esté afectada por este problema. |
|||
6249685 |
clu_trans_srv no se puede interrumpir. Hay un error en la versión de 64 bits de Red Hat Enterprise Linux 3.0 que hace que el proceso clu_trans_srv termine en modo sin interrupción cuando se realiza una E/S asíncrona. Esto significa que kill -9 no funciona y el sistema operativo debe reiniciarse. Solución Use una versión de 32 bits de Red Hat Enterprise Linux 3.0. |
|||
6262824 |
hadbm no admite contraseñas que contengan letras mayúsculas. Las letras mayúsculas en las contraseñas se convierten en minúsculas cuando la contraseña se almacena en hadb. Solución No use contraseñas que contengan letras mayúsculas. |
|||
6265419 |
Retroceder en las versiones de HADB 4.4.2.5 a HADB 4.4.1.7 hace que ma falle con distintos códigos de error. Al retroceder en las versiones, el agente de administración puede fallar con distintos códigos de error. Solución Es posible retroceder en la versión de la base de datos de HADB, sin embargo, el agente de administración no podrá retroceder en su versión si se han hecho cambios en los objetos del repositorio. Después de retroceder en la versión, deberá usar el agente de administración de la última versión de HADB. |
|||
6271063 |
Instalación, eliminación y conservación de symlink. Con respecto a la instalación o eliminación del paquete de HADB (Solaris: SUNWhadbc, Linux: sun-hadb-c) versión <m.n.u-p>, symlink /opt/SUNWhadb/<m> no se modifica una vez creado. En consecuencia, es posible que exista un symlink huérfano. Solución Elimine el symlink antes de la instalación o después de la desinstalación, a menos que esté en uso. |
|||
6273681 |
Es posible que interfieran los agentes de administración en las zonas locales y globales. En Solaris 10, al detener el agente de administración usando la secuencia de comandos ma-initd en una zona global, se detiene también el agente de administración en la zona local. Solución No instale el agente de administración en la zona global y la local. |
|||
6275103 |
hadbm/ma debería generar un mensaje de error más claro cuando un objeto de sesión ha caducado y se ha eliminado de MA. En ocasiones, un problema de contención de recursos en el servidor puede hacer que un cliente de administración se desconecte. Al volverse a conectar, se puede mostrar un mensaje de error algo confuso "hadbm:Error 22184: A password is required to connect to the management agent". Solución Compruebe si hay algún problema con los recursos en el servidor, realice las acciones necesarias (por ejemplo, agregue más recursos) y vuelva a intentar la operación. |
|||
6275319 |
Los usuarios que no son root no pueden administrar HADB. La instalación de Java Enterprise System (como root) no permite que los usuarios que no sean root administren HADB. Solución Inicie sesión siempre como root para poder administrar HADB. |
|||
6293912 |
El agente de administración no debería usar interfaces especiales. Las interfaces de uso especial con direcciones IP similares a 0.0.0.0 no deberían registrarse como interfaces válidas para los nodos de HADB en el agente de administración. El registro de dichas interfaces podría provocar problemas si los nodos de HADB se configuran en estas interfaces mediante la ejecución del comando hadbm create por parte del usuario con nombres de host en lugar de con direcciones IP. Los nodos no podrán establecer comunicación, lo que provocara el bloqueo del comando create. Solución Al utilizar hadbm create en hosts con varias interfaces, especifique siempre explícitamente las direcciones IP con una notación DDN. |
|||
6291562 |
Errores de reensamblaje en Windows. En la plataforma Windows, con determinadas configuraciones y cargas, es posible que se produzca un gran número de errores de reensamblaje en el sistema operativo. Se ha detectado este problema con configuraciones de más de veinte nodos al ejecutar varios análisis de tabla (select *) en paralelo. Entre los síntomas detectados, se incluyen los siguientes: las transacciones se anulan frecuentemente, el proceso de reparación o recuperación tarda mucho tiempo en completarse, y se agota frecuentemente el tiempo de espera en diversas partes del sistema. Solución Para solucionar el problema, puede establecer la variable del registro de Windows HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters en un valor superior a 100 (valor predeterminado). Se recomienda que aumente este valor a 0x1000 ( 4096). Para obtener más información, consulte el artículo 811003 en las páginas de asistencia técnica de Microsoft. |
|||
6303581, 6346059, 6307497 |
Al ejecutar hadbm start <db_name>, parte de la contraseña introducida se muestra sin ocultar. Es posible que, cuando un equipo esté realizando una carga, el mecanismo de ocultación falle y se expongan algunos caracteres de la contraseña introducida. Esto representa un riesgo de seguridad menor y la contraseña debería estar siempre oculta. Solución: Guarde las contraseñas en sus propios archivos de contraseñas (el método recomendado normalmente desde Application Server 8.1) y consúltelas con las opciones --adminpassword o --dbpasswordfile. |
Este apartado describe problemas conocidos relacionados con la instalación, junto con las soluciones pertinentes.
ID del error |
Resumen |
||
---|---|---|---|
5009728 |
Al cerrar la instalación, algunos sistemas Linux se quedan bloqueados tras hacer clic en el botón Finish (Finalizar). Se ha observado que este problema se ha producido en varios sistemas Linux. Es más frecuente en Java Desktop System 2, pero también se ha observado en distribuciones Linux Red Hat. Después de hacer clic en el botón "Finalizar" en la última pantalla, el instalador no consigue iniciar una ventana del explorador que contiene la página con información acerca del producto o la página de registro. El instalador se bloquea completamente y no permite volver a la línea de comandos. Solución Salga de instalador pulsando Ctrl+C en la ventana de terminal en la que se inició el instalador. Después de hacer esto, es posible que se muestre una ventana del explorador que contiene información acerca del producto o la pantalla de registro, de lo contrario, inicie el navegador y escriba la siguiente dirección URL para ver la información acerca del producto:
Si seleccionó la opción pertinente para registrar el producto, siga el enlace a la página de registro que se mostrará en la página de información sobre el producto. |
||
6199697 |
En Windows, el directorio imq debe crearse durante la instalación. En Windows, justo después de instalar Application Server Enterprise Edition, el agente de Message Queue presenta errores durante el inicio y se muestra un mensaje en el que se indica que no existe el directorio drive:\as\domains\domain1\imq. Tenga en cuenta que si el agente se ejecuta después de iniciar domain1, Application Server creará el directorio y no habrá ningún problema. Solución
|
||
6297837 |
El instalador de Application Server muestra una fecha de versión del producto incorrecta en el nombre del producto, "Sun Java(TM) System Application Server Enterprise Edition 8.1 2005Q4". Solución El nombre y la fecha del producto correctos son "Sun Java(TM) System Application Server Enterprise Edition 8.1 2005Q2". |
||
6396045 |
Application Server no admite el Sistema de archivos de red (NFS). Solución None (Ninguna). |
Para ejecutar el tutorial de J2EE 1.4 en Sun Java System Application Server Edición Enterprise 8.1 2005Q2, lleve a cabo estas tareas:
Cuando edite el archivo /common/build.properties tal y como se describe en el apartado “About the Examples” del capítulo “About this Tutorial”, cambie también el puerto 4848 por el 4849.
Cuando use la herramienta de implementación (Deploytool), agregue el servidor localhost:4849 antes de implementar un ejemplo.
Cuando utilice la consola de administración para crear un recurso, use la ficha Targets (Destinos) para especificar el servidor como el destino. Si utiliza la línea de comandos o un destino asant, el servidor es el destino predeterminado y no es necesario realizar ninguna acción adicional.
En esta sección, se describen problemas conocidos relacionados con la administración del ciclo de vida, junto con las soluciones pertinentes.
ID del error |
Resumen |
||
---|---|---|---|
6193449 |
Después de configurar la propiedad de ejb-timer-service "minimum-delivery-interval" en 9000, cualquier intento por definir la propiedad redelivery-interval-in-mills de ejb-timer-service en 7000 provoca que el comando "set" falle y muestre el siguiente error:
El problema es que la lógica que relaciona la propiedad de intervalo de reentrega con la propiedad de entrega mínima es incorrecta e impide que se utilice la GUI o la CLI para definir valores en los que el intervalo de entrega mínimo sea superior al intervalo de reentrega. minimum-delivery-interval-in-millis debe ser igual o mayor que la propiedad redelivery-interval-in-millis de ejb-timer-service.. El problema es que se produce una comprobación de validación errónea en Application Server para verificar que el valor de redelivery-interval-in-millis es mayor que el valor de minimum-delivery-interval-in-millis. Solución Use los valores predeterminados para estas propiedades, tal y como se indica a continuación:
Si utiliza valores que no sean los predeterminados, se generará un error. |
Este apartado describe problemas conocidos relacionados con el registro, junto con las soluciones pertinentes.
ID del error |
Resumen |
|
---|---|---|
6180095 |
La definición de la instrucción para access,failure provoca que Application Server se bloquee en el inicio. Si configura la opción java.security.debug para JVM, la instancia del servidor se bloqueará irreversiblemente al iniciarse; por ejemplo, si configura domain.xml, se producirá este problema:
Ninguna por ahora. Evite configurar este indicador. |
Este apartado describe problemas conocidos relacionados con Java Message Queue, junto con las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6173308, 6189645, 6198481, 6199510, 6208728 |
Las reconexiones de JMS no se completan correctamente en ciertos casos que dependen de temporizadores. Los errores al volverse a conectar en situaciones que dependen de temporizadores pueden estar causados por diversos problemas. Solución Puede solucionarlos de esta forma:
|
6198465 |
El comportamiento del dispositivo de escucha de mensajes asíncrono ha cambiado en appclient de la versión 8.0 a 8.1 Update 2. Debido a un cambio reciente, cuando una escucha de mensaje asíncrono es el único subproceso activo en el contenedor app-client, el resto de la máquina virtual (VM) appclient existe en forma de daemon. Este comportamiento supone un regreso para las aplicaciones anteriores que realizaban recepciones asíncronas en ACC. Este problema afecta a los clientes de la aplicación que configuran un módulo de escucha de mensajes JMS y salen del subproceso principal. Solución No salga del subproceso principal. Espere a que la escucha del mensaje informe al subproceso principal antes de detenerlo. |
Este apartado describe problemas conocidos relacionados con la supervisión, junto con las soluciones pertinentes.
ID del error |
Resumen |
||||||
---|---|---|---|---|---|---|---|
6174518 |
Algunas de las estadísticas de supervisión de servicios HTTP no presentan información útil y hay que hacer caso omiso de ellas. Al visualizar las estadísticas de supervisión de algunos elementos en el servicio HTTP, algunos valores que se presentan no se corresponden con los valores reales o se muestran siempre como 0. Específicamente, las siguientes estadísticas de servicio HTTP no muestran información aplicable para Application Server y, en consecuencia, hay que hacer caso omiso de ellas:
Solución Estos elementos de supervisión se eliminarán en versiones futuras y se sustituirán por información más adecuada. |
||||||
6191092 |
No se ha eliminado la supervisión MBean para un módulo EJB, a pesar de que todas las estadísticas relacionadas con este nombre de supervisión se han movido. Por ejemplo:
Este hecho es verdadero para aplicaciones y módulos EJB. Desde el punto de vista de la programación (mediante MBeanAPI) y mediante asadmin list/get, sigue existiendo todavía un MBean de supervisión vacío. Diagnóstico
Puede consultar las estadísticas:
Una vez que anule la implementación:
Si ejecuta un comando de enumeración, seguirá viendo la aplicación:
pero no contiene estadísticas de supervisión:
Para obtener los nombres válidos que comiencen por una cadena, utilice el carácter comodín ("` *"). Por ejemplo, para enumerar los nombres de todas las entidades que se pueden supervisar que comiencen por server, use list "server.*". Solución Es un problema inocuo. El módulo se puede volver a implementar con seguridad sin que se produzcan problemas. La supervisión raíz Mbean no se elimina, sino que se queda vacía. |
Este apartado describe problemas conocidos relacionados con PointBase, junto con las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6184797 |
Al definir los niveles de aislamiento de un conjunto de conexiones para una aplicación se genera una excepción en PointBase. En el caso de un conjunto de conexiones JDBC que señale a una instalación de base de datos PointBase, al definir el atributo transaction-isolation-level pool en cualquier valor distinto del predeterminado (Connection.TRANSACTION_READ_COMMITTED) se generará una excepción. Sin embargo, si establece este mismo parámetro en un valor que no sea el predeterminado para los conjuntos que hacen referencia a otras bases de datos, no se producirá ninguna excepción. Solución En el caso de los conjuntos de conexiones JDBC que hacen referencia a una instalación de base de datos PointBase, no intente configurar la opción transaction-isolation-level. |
6204925 |
PointBase desencadena una excepción si un servidor de red y los controladores integrados se utilizan conjuntamente. En ocasiones, la aplicación PointBase integrada desencadena una excepción si el controlador del servidor de red y el controlador integrado se utilizan simultáneamente. Solución Use el controlador integrado o uno de red, pero no los dos juntos. |
6264969, 6275448 |
Se producen problemas de actualización cuando se sobrescribe la base de datos predeterminada de PointBase. Al actualizar a Application Server Edición Enterprise 8.1 2005Q2 Actualización 2, la revisión de la versión de actualización sobrescribe la base de datos predeterminada de Pointbase. Solución Vuelva a crear o a introducir los esquemas o los datos que existían antes de la actualización. Si ha implementado aplicaciones con Beans CMP con la opción para generar tablas, deberá anular la implementación o volver a implementar la aplicación para que se vuelvan a generar las tablas. |
En esta sección, se describen problemas conocidos relacionados con el código de ejemplo incluido en el producto Application Server 8.1.
ID del error |
Resumen |
|||||
---|---|---|---|---|---|---|
6195092 |
En Windows, al usar el comando setup-one-machine-cluster se produce un bloqueo, pero funciona en Solaris; el comando mqfailover requiere que se pulse Ctrl+C para cancelar el proceso. A continuación, se debe volver a realizar la ejecución. Desde install_dir\samples\ee-samples\failover\apps\mqfailover\docs\index.html, si se ejecutan los siguientes comandos:
Si ya ha ejecutado asant setup-one-machine-cluster-without-ha o asant setup-one-machine-cluster-with-ha para otro ejemplo de Enterprise Edition, ejecute asant configure-mq o bien asant setup-one-machine-cluster-and-configure-mq. En este caso, el comando parece que se ejecuta correctamente:
Pero el sistema se bloquea definitivamente. Solución Ninguna por ahora. Este problema afecta de forma parecida a todos los ejemplos de Enterprise Edition que utilizan este destino ant en Windows. Una solución consiste en pulsar Ctrl+C para cancelar el proceso y luego volver a ejecutarlo. |
|||||
6198003 |
La documentación no indica de forma explícita que es necesario crear recursos de JMS antes de ejecutar la Aplicación de muestras de errores de MQ siguiendo las instrucciones de implementación de asadmin. El error que se produce es el siguiente:
La documentación no indica explícitamente que los recursos JMS se deban crear manualmente si se lleva a cabo una implementación manual utilizando comandos asadmin deploy ni que haya que usar los destinos Ant especificados para implementar la aplicación de ejemplo. Solución Use el destino de implementación asant para la secuencia de comandos build.xml, lo que crea los recursos JMS necesarios para ejecutar la aplicación. |
|||||
6198239 |
En Linux, se muestra un error de tiempo de ejecución durante la creación de certificados en los ejemplos de seguridad/servicios Web. Cuando se implementa el ejemplo install_dir/samples/webservices/security (basicSSl) en Linux, el certificado no se crea y se muestra un error similar al siguiente:
El problema es que la ubicación de las bibliotecas NSS es distinta en Linux y en Solaris. Debe asegurarse de que LD_LIBRARY_PATH señale a las bibliotecas NSS adecuadas a la hora de realizar la implementación en Linux. Defina LD_LIBRARY_PATH en su entorno o bien ajuste la secuencia de comandos del empaquetador del shell install_dir/bin/asant. Solución Lleve a cabo una de las siguientes acciones:
|
Este apartado describe problemas conocidos relacionados con los certificados y la seguridad de las aplicaciones web y Application Server, junto con las soluciones pertinentes.
ID del error |
Resumen |
---|---|
6183318 |
No se pueden ejecutar aplicaciones WebServiceSecurity en Enterprise Edition con J2SE 5.0. Las aplicaciones WebServiceSecurity no se pueden ejecutar con J2SE 5.0 por los siguientes motivos:
El equipo de J2SE ha indicado acerca de este error que se agregue compatibilidad para los mecanismos de empaquetado y desempaquetado RSA-PKCS1 y RSA-OAEP (CR 6190389). Solución Use J2SE 1.4.2 con cualquier otro proveedor JCE (no el que se incluye de forma predeterminada). Tenga en cuenta que la compatibilidad con el acelerador de hardware no está presente en esta configuración. |
6269102 |
El proceso de finalización de SSL no funciona; cuando se configura el equilibrador de carga (hardware) para la finalización de SSL, Application Server cambia el protocolo https por http durante la redirección. Solución Agregue un equilibrador de carga de software entre el equilibrador de carga de hardware y Application Server. |
En esta sección, se describen problemas conocidos relacionados con la utilidad de actualización, junto con las soluciones pertinentes.
ID del error |
Resumen |
||
---|---|---|---|
6165528 |
Los dominios creados en una ruta personalizada distinta del directorio install_dir /domains no se actualizan directamente al actualizar de Application Server Enterprise Edition 8 a Application Server Enterprise Edition 8.1. Al ejecutar la utilidad de actualización e identificar install_dir como el directorio de instalación de origen, el proceso de actualización actualiza sólo los dominios que se crean en el directorio install_dir/domains. Los dominios creados en otras ubicaciones no se actualizan. Solución Antes de iniciar el proceso de actualización, copie todos los directorios del dominio desde sus ubicaciones en el directorio install_dir/domains . |
||
6207337 |
En algunos sistemas Linux, el instalador que realiza una actualización "in situ" falla al iniciar la herramienta de actualización después de iniciar el asistente de actualización. Este problema se ha observado en varios sistemas Linux y es más frecuente en Java Desktop System 2, pero también se ha detectado en distribuciones Red Hat. Después de hacer clic en el botón que permite iniciar la herramienta de actualización en la pantalla final del instalador, éste no logra iniciarla para completar el proceso y se bloquea de forma indefinida, por lo que no consigue volver a la línea de comandos. Solución Este problema no se produce si se utiliza el modo de instalación mediante línea de comandos para llevar a cabo la actualización "in situ".
Si seleccionó la opción pertinente para registrar el producto, siga el enlace a la página de registro que se mostrará en la página de información sobre el producto. |
||
6296105 |
El certificado autofirmado no se considera de confianza al actualizar de 8.0 Platform Edition (PE) a 8.1 Enterprise Edition (EE) UR2 y después de la actualización. Solución Elimine las siguientes entradas del destino domain.xml (después de la actualización) y reinicie el servidor: <jvm-options>-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot} /config/keystore.jks</jvm-options>- <jvm-options>Djavax.net.ssl.trustStore=${com.sun.aas.instanceRoot} /config/cacerts.jks</jvm-options> |
En esta sección, se describen problemas conocidos relacionados con el contenedor web, junto con las soluciones pertinentes.
ID del error |
Resumen |
|||
---|---|---|---|---|
5004315 |
En Windows, si implementa una aplicación usando --precompilejsp=true, es posible que los archivos JAR se bloqueen, lo que provocará errores si en el futuro desea volver a implementar o anular la implementación. Si solicita una precompilación de JSP cuando implemente una aplicación en Windows, los siguientes intentos para anular la implementación o para volver a implementarla (o alguna aplicación con el mismo ID de módulo) no funcionarán tal y como se esperaba. El problema es que la precompilación de JSP abre archivos JAR en la aplicación, pero luego no los cierra y Windows impide que se anule la implementación porque no se pueden eliminar los archivos e impide que se puedan volver a implementar, puesto que no se pueden sobrescribir. Tenga en cuenta que la anulación de la implementación es correcta hasta un punto en el que la aplicación se elimina lógicamente de Application Server. Tenga en cuenta también que la utilidad asadmin no muestra ningún mensaje de error, a pesar de que los archivos jar bloqueados y el directorio de la aplicación siguen estando en el servidor. El archivo de registro del servidor contiene mensajes en los que se indica que no se han podido eliminar los archivos ni el directorio de la aplicación. Los intentos de volver a implementar la aplicación después de que ésta se haya anulado fallan porque el servidor trata de eliminar los archivos existentes y el directorio, pero estos intentos fallan. Esto puede suceder si intenta implementar una aplicación que utilice el mismo ID de módulo que la aplicación que se implementó originalmente porque el servidor utiliza dicho ID de módulo cuando elige el nombre del directorio para conservar los archivos de la aplicación. Si intenta reimplementar la aplicación sin anular su implementación primero, se producirán fallos por las mismas razones. Diagnóstico Si intenta volver a implementar la aplicación o implementarla después de haberla eliminado, la utilidad asadmin devuelve un error semejante al siguiente.
Solución No se producirá este problema, si especifica --precompilejsps=false (la configuración predeterminada) al implementar una aplicación. Tenga en cuenta que el primer uso que haga de la aplicación desencadenará la compilación JSP, por lo que el tiempo de respuesta para la primera solicitud será superior al de las solicitudes posteriores. Debe saber también que si realiza una compilación previa, deberá detener y reiniciar el servidor antes de anular la implementación de la aplicación o de volver a implementarla. Al cerrar, se liberan los archivos JAR bloqueados por lo que la anulación de la implementación o el proceso para volver a implementar se realizarán correctamente. |
|||
6172006 |
No se puede implementar WAR con un archivo web.xml basado en Servlet 2.4 que contenga un elemento <load-on-startup> vacío. El elemento opcional load-on-startup servlet en web.xml indica que el servlet asociado se debe cargar e iniciar cuando se inicie la aplicación web de la que forma parte. El contenido opcional de este elemento es un entero que indica el orden en el que se debe cargar e iniciar el servlet con respecto a los demás servlets de la aplicación web. Si <load-on-startup> está vacío, indica que el orden no es relevante, siempre y cuando el servlet se cargue e inicie durante el inicio de la aplicación web que lo contiene. El esquema de Servlet 2.4 de web.xml ya no admite un elemento <load-on-startup> vacío. Esto implica que debe especificarse un entero al utilizar un archivo web.xml basado en Servlet 2.4. Si se especifica un elemento <load-on-startup> vacío, como en <load-on-startup/>, el archivo web.xml no podrá realizar la validación en el esquema de Servlet 2.4 para web.xml, por lo que fallará la implementación de la aplicación web. Problema de compatibilidad con versiones anteriores En el caso de web.xml basado en Servlet 2.3, sí se puede dejar vacío <load-on-startup>. Solución Especifique <load-on-startup>0</load-on-startup> al utilizar un archivo web.xml basado en Servlet 2.4 para indicar que el orden de carga del servlet es irrelevante. |
|||
6184122 |
No se puede compilar la página JSP en servidores con restricciones de recursos. Se puede acceder a la página JSP, pero se producen fallos al compilar y el registro del servidor contiene el mensaje de error "Unable to execute command", es decir, que no se puede ejecutar el comando con este seguimiento de pila:
Solución Defina el conmutador de compilación "fork" de JSP en "false". Esta acción puede realizarse de dos formas:
Las dos configuraciones impedirán que ant genere nuevos procesos para la compilación javac. |
|||
6188932 |
Application Server no admite el complemento auth-passthrough de Web Server 6.1. Sun Java System Application Server Edición Enterprise 8.1 2005Q2 Actualización 2 agrega compatibilidad para la función proporcionada por la función del complemento auth-passthrough que está disponible con Sun Java System Application Server Edición Enterprise 7.1. Sin embargo, en Application Server Edición Enterprise 8.1 2005Q2 Actualización 2, la función del complemento auth-passthrough está configurada de forma diferente. La función del complemento auth-passthrough en Application Server Edición Enterprise 7.1 ha resultado útil en situaciones de implementación de dos capas:
En arquitecturas de red de este tipo, un cliente se conecta a un servidor web de principal (front-end) que se haya configurado con la función del complemento service-passthrough y reenvía solicitudes HTTP a la instancia de Application Server que actúa de proxy para que las procese. La instancia de Application Server sólo puede recibir solicitudes desde el proxy del servidor web, pero nunca directamente de los hosts clientes. En consecuencia, ninguna aplicación implementada en la instancia de Application Server que actúa de proxy que solicite información del cliente (como pueda ser la dirección IP del cliente) recibirá la IP de host del proxy, puesto que éste es el host que origina la solicitud remitida. En Application Server Edición Enterprise 7.1, la función del complemento auth-passthrough se puede configurar en la instancia de Application Server que actúa como proxy para hacer que la información de los clientes remotos esté disponible directamente para todas las aplicaciones implementadas; de esta forma, el funcionamiento es como si la instancia de Application Server que actúa de proxy hubiera recibido la solicitud directamente en lugar de a través del servidor web intermediario que ejecuta el complemento service-passthrough. En Application Server Edición Enterprise 8.1 2005Q2 Actualización 2, la función auth-passthrough puede activarse definiendo la propiedad authPassthroughEnabled del elemento <http-service> de domain.xml en TRUE de la siguiente forma:
|
|||
|
Las mismas consideraciones de seguridad de la función del complemento auth-passthrough de Application Server Edición Enterprise 7.1 se aplican también a la propiedad authPassthroughEnabled de Application Server Edición Enterprise 8.1 2005Q2 Actualización 2. Como, con authPassthroughEnabled , es posible sustituir la información que se podría utilizar para propósitos de autenticación (como la dirección IP desde la que se origina la solicitud o el certificado SSL de cliente), es esencial que sólo los clientes o los servidores de confianza puedan conectarse a la instancia de Application Server Edición Enterprise 8.1 2005Q2 Actualización 2 con el comando authPassthroughEnabled definido como TRUE (verdadero). Como medida de precaución, se recomienda que sólo los servidores que estén detrás de un servidor de seguridad corporativo se configuren con authPassthroughEnabled establecido en TRUE. Un servidor que esté accesible a través de Internet nunca debe configurarse con authPassthroughEnabled definido en TRUE. Tenga en cuenta que en una situación en la que el servidor web proxy se haya configurado con el plugin service-passthrough y éste reenvíe solicitudes a una instancia de Application Server 8.1 Update 2 con authPassthroughEnabled definida como TRUE, la autenticación SSL de cliente puede habilitarse en el servidor web proxy y deshabilitarse en la instancia de Application Server 8.1 Update 2 que actúe de proxy. En este caso, la instancia de Application Server 8.1 Update 2 seguirá considerando la solicitud como si estuviera autenticada a través de SSL y proporcionará el certificado SSL de cliente a cualquier aplicación implementada que lo solicite. |