Versión 4.2
Número de referencia 820-3701
Estas notas de la versión contienen información importante que está disponible en el momento del lanzamiento de Sun Java™ System Información de resolución de problemas de 4.2. Además de tratarse otros temas, aquí se describen las funciones, las mejoras, las limitaciones y los problemas conocidos del producto. Antes de empezar a utilizar Información de resolución de problemas de 4.2 lea este documento.
Estas notas de la versión también contienen información sobre las versiones 4.0 y 4.1 de Información de resolución de problemas de: consulte Nuevas funciones de Información de resolución de problemas de 4.0 y Nuevas funciones de Información de resolución de problemas de 4.1, respectivamente, para obtener información acerca de las nuevas funciones que se han incluido en estas versiones.
La versión más actualizada de estas notas de la versión se encuentra en el sitio web de documentación de Sun Java System Información de resolución de problemas de, http://docs.sun.com/coll/1307.3. Consulte el sitio web antes de instalar y configurar el software y, después, visítelo de forma periódica para ver los manuales y las notas de la versión más actualizados.
En estas notas de la versión se incluyen los siguientes apartados:
Instalación o actualización a Información de resolución de problemas de 4.2
Plataformas y componentes compatibles con Información de resolución de problemas de 4.2
Nuevas funciones de Información de resolución de problemas de 4.2 y versiones recientes
Errores solucionados en Información de resolución de problemas de 4.2 y versiones recientes
Actualizaciones de documentación de Información de resolución de problemas de 4.2
Características de accesibilidad para usuarios con discapacidades
Se hace referencia a las direcciones URL de terceras partes para proporcionar información adicional relacionada.
Sun no se responsabiliza de la disponibilidad de las páginas web de otras empresas que se mencionan en este documento. Sun no avala ni se hace responsable del contenido, la publicidad, los productos ni otros materiales disponibles en dichos sitios o recursos, o a través de ellos. Sun tampoco se hace responsable de los daños o pérdidas, supuestos o reales, provocados por el uso o la confianza puesta en el contenido, los bienes o los servicios disponibles en dichos sitios o recursos, o a través de ellos.
La siguiente tabla contiene una lista de las fechas de todas las versiones 4.x del producto Información de resolución de problemas de y describe los cambios realizados en este documento en relación a cada versión.
Tabla 1–1 Historial de revisiones
Date |
Descripción de los cambios |
---|---|
Mayo de 2006 |
Versión inicial de este documento para Información de resolución de problemas de 4.0. |
Enero de 2007 |
Versión inicial de este documento para Información de resolución de problemas de 4.1 Beta. Incorpora la descripción de la compatibilidad de JAAS. |
Abril de 2007 |
Segunda versión de este documento para Información de resolución de problemas de 4.1 Beta. Incorpora la función de alta disponibilidad. |
Septiembre de 2007 |
Tercera versión de este documento para Información de resolución de problemas de 4.1. Incluye la descripción de la compatibilidad con Java Enterprise System Monitoring Framework, puertos C fijos, soluciones a fallos y otras funciones. |
Abril de 2008 |
Primera versión de borrador de este documento para Información de resolución de problemas de 4.2. Incluye nuevas funciones para esta versión. |
Puede realizar una nueva instalación de Información de resolución de problemas de 4.2 o una actualización desde Información de resolución de problemas de 3.6 o posterior mediante el instalador Información de resolución de problemas de 4.2. El procedimiento y toda la información relacionada con la instalación o la actualización en plataformas Solaris, Linux y Windows están documentados en la Sun Java System Message Queue 4.2 Installation Guide, que no se ha actualizado para Información de resolución de problemas de 4.2.
Si está realizando una actualización desde una versión de Información de resolución de problemas de anterior a la versión 3.6, consulte la Guía de actualización para UNIX de Sun Java Enterprise System 5, Sun Java Enterprise System 5 Update 1 Upgrade Guide for UNIX
De igual forma, consulte los Problemas relacionados con la instalación para conocer las limitaciones y los problemas relacionados con los procesos de instalación y actualización.
Esta sección cubre los siguientes temas relacionados con los requisitos del sistema para Información de resolución de problemas de 4.2:
Información de resolución de problemas de 4.2 es compatible con las plataformas de los sistemas operativos Solaris, Linux y Windows. Tabla 1–2 muestra las versiones compatibles de cada una de estas plataformas. Para obtener información sobre los requisitos de hardware de cada plataforma, consulte la Sun Java System Message Queue 4.2 Installation Guide
Tabla 1–2 Versiones de plataformas compatibles
La virtualización del sistema es una tecnología que permite que varias instancias del sistema operativo (SO) se ejecuten de forma independiente en un hardware compartido. Desde el punto de vista de la funcionalidad, el software implementado en un SO alojado en un entorno virtualizado no reconoce normalmente que la plataforma subyacente se ha virtualizado. Sun realiza pruebas de sus productos de Sun Java System en determinadas combinaciones de SO y virtualización de sistemas para confirmar que los productos de Sun Java System siguen funcionando en entornos virtualizados con una configuración y un tamaño correctos del mismo modo que lo harían en sistemas que no se hayan virtualizado. Para obtener información sobre la compatibilidad de Sun con los productos de Sun Java System en entornos virtualizados, consulte http://download.oracle.com/820-4651.
Además de los requisitos específicos de las plataformas, Información de resolución de problemas de 4.2 también depende de determinados componentes básicos que deben instalarse para desarrollar y ejecutar clientes Información de resolución de problemas de. Tabla 1–3 describe estos componentes. Asimismo, pueden utilizarse versiones distintas o implementaciones de otros proveedores, pero Sun Microsystems no las ha probado y, por tanto, no garantiza oficialmente su compatibilidad.
El instalador de Información de resolución de problemas de le permite seleccionar un JDK/JRE existente o instalar la versión del JDK (1.5.0_15).
Componente |
Se admite |
Versiones compatibles |
---|---|---|
Java Runtime Environment (JRE) |
Agente y herramientas de administración de Información de resolución de problemas de |
Entorno de tiempo de ejecución de J2SETM 1.5.0_15 o posterior Entorno de tiempo de ejecución de JavaTM SE 1.6.0 (sólo versiones de Sun Microsystems) |
Java Software Development Kit (JDK), Standard Edition |
Desarrollo e implementación de clientes Java |
J2SETM Development Kit 1.5.0_15 o posterior Java SE Development Kit 1.6.0 (sólo versiones de producción de Sun Microsystems) |
Tabla 1–4 muestra los componentes adicionales que puede instalar para dar mayor soporte a los clientes de Información de resolución de problemas de. Es posible que no necesite todos los componentes que aparecen en la lista: por ejemplo, si no está escribiendo un cliente de C, no necesitará compilador C, biblioteca de tiempo de ejecución C++, NSPR o NSS.
Tabla 1–4 Componentes de compatibilidad opcionales
Las nuevas funciones de Información de resolución de problemas de 4.2, 4.2 y 4.0 se describen en las siguientes secciones:
Nuevas funciones de Información de resolución de problemas de 4.2
Nuevas funciones de Información de resolución de problemas de 4.1
Nuevas funciones de Información de resolución de problemas de 4.0
Sun Java System Información de resolución de problemas de es un servicio de mensajería completo que proporciona funciones fiables y asíncronas, conformes con la especificación Java Messaging Specification (JMS) 1.1. Además, Información de resolución de problemas de incluye funciones que superan la especificación JMS para dar satisfacción a las necesidades de las instalaciones en grandes empresas.
Información de resolución de problemas de 4.2 es una versión menor que incluye nuevas mejoras en lo que a funciones y soluciones a fallos se refiere. Esta sección explica cómo instalar o realizar una actualización a Información de resolución de problemas de 4.2 y describe las nuevas funciones que se incluyen en esta versión:
Para obtener información sobre las funciones que se incluyen en Información de resolución de problemas de 4.0 y 4.1, consulte Nuevas funciones de Información de resolución de problemas de 4.0 y Nuevas funciones de Información de resolución de problemas de 4.1, respectivamente.
En Información de resolución de problemas de 4.2, un editor puede publicar mensajes en varios destinos de temas y un suscriptor puede consumir mensajes procedentes de varios destinos de temas. Esta función se logra al utilizar un nombre de destino de temas que incluye caracteres comodín que representen varios destinos. Al utilizar dichos nombres simbólicos, los administradores pueden crear destinos de temas adicionales, según sea necesario, coherentes con el esquema de asignación de nombres comodín. Los editores y suscriptores publican y consumen automáticamente a partir de los destinos añadidos. (Los suscriptores de los temas comodín son más comunes que los editores.)
Esta función no se aplica a destinos de cola.
El formato del nombre de destino de temas simbólico consta de varios segmentos, en los que los caracteres comodín (*, **, >) pueden representar uno o más segmentos del nombre. Por ejemplo, suponga que tiene el siguiente esquema de asignación de nombres de destinos de temas:
size.color. shape
en el que los segmentos del nombre del tema pueden tener los siguientes valores:
size: large, medium, small, ...
color: red, green, blue, ...
shape: circle, triangle, square, ...
Message Queue admite los siguientes caracteres comodín:
* hace coincidir un único segmento
** hace coincidir uno o más segmentos
> hace coincidir cualquier número de segmentos sucesivos
Por lo tanto, puede indicar varios destinos de temas de la siguiente manera:
large.*.circle representaría:
large.red.circle large.green.circle ...
**.square representaría todos los nombres que acaban en .square , por ejemplo:
small.green.square medium.blue.square ... |
small.> representaría todos los nombres de destinos que comienzan por small., por ejemplo:
small.blue.circle small.red.square ... |
Para utilizar esta función de destinos múltiples, deberá crear destinos de temas utilizando un esquema de asignación de nombres similar al descrito anteriormente. A continuación, las aplicaciones de cliente pueden crear editores o consumidores utilizando nombres de destinos simbólicos. Por ejemplo:
... String DEST_LOOKUP_NAME = "large.*.circle"; Topic t = (Destination) ctx.lookup(DEST_LOOKUP_NAME); TopicPublisher myPublisher = mySession.createPublisher(t) myPublisher.send(myMessage);
... String DEST_LOOKUP_NAME = "**.square"; Topic t = (Destination) ctx.lookup(DEST_LOOKUP_NAME); TopicSubscriber mySubscriber = mySession.createSubscriber(t); Message m = mySubscriber.receive();
En el primer ejemplo, el agente colocará una copia del mensaje en cualquier destino que coincida con el nombre simbólico large.*.circle. En el segundo ejemplo, se creará un suscriptor si existe al menos un destino que coincida con el nombre simbólico **.square y recibirá mensajes de todos los destinos que coincidan con dicho nombre simbólico. Si no existen destinos que coincidan con el nombre simbólico, el suscriptor no se creará hasta que exista dicho destino.
Si un administrador crea destinos adicionales que coincidan con un nombre simbólico, los editores comodín creados mediante dicho nombre simbólico se publicarán en dicho destino y los editores comodín creados mediante dicho nombre simbólico recibirán mensajes de dicho destino.
Además, las herramientas de administración de Message Queue, aparte de realizar informes acerca del número total de editores (productores) y suscriptores (consumidores) de un destino de temas, también realizarán informes sobre el número de editores que son editores comodín (incluidos sus nombres de destino simbólicos correspondientes) y el número de suscriptores que son suscriptores comodín (incluidos sus nombres de destino simbólicos), si es que existen.
Esta nueva función de Información de resolución de problemas de 4.2 permite la validación del contenido de un mensaje de texto (no un objeto) XML contra un esquema XML en el momento en el que se envía el mensaje al agente. La ubicación del esquema XML (XSD) se especifica como propiedad de un destino de Message Queue. Si no se especifica ninguna ubicación XSD, la declaración DTD del documento XML se utilizará para realizar la validación DTD. (la validación XSD, que incluye la validación del intervalo de valor y el tipo de datos, es más rigurosa que la validación DTD.)
Las aplicaciones cliente que utilizan esta nueva función deben actualizarse desde la versión Java SE a JRE 1.5 o superior.
Para activar la validación del esquema XML, se deben configurar las siguientes propiedades de destinos físicos:
Tabla 1–5 Propiedades de destinos físicos para la validación del esquema XML
Propiedad |
Tipo |
Valor predeterminado |
Descripción |
---|---|---|---|
validateXMLSchemaEnabled |
Booleano |
false |
¿Se ha activado la validación del esquema XML? Si está configurada en false o no está configurada, la validación del esquema XML no se activará para el destino. |
XMLSchemaURIList |
String |
nulo |
Lista separada por espacios de cadenas URI del documento del esquema XML (XSD) Los URI señalan la ubicación de uno o más XSD para su uso en la validación del esquema XML, si está activada. Utilice comillas dobles en este valor si se especifican varios URI. Ejemplo: âhttp://foo/flap.xsd http://test.com/test.xsdâ Si esta propiedad no está configurada o es nula y la validación XML está activada, la validación XML se realiza a través de un DTD especificado en el documento XML. |
reloadXMLSchemaOnFailure |
Booleano |
false |
¿Se ha activado la recarga del esquema XML en caso de fallo? Si está configurada en false o no está configurada, el esquema no se recargará si la validación no se realiza correctamente. |
Al activar la validación XML, el tiempo de ejecución del cliente de Información de resolución de problemas de intentará validar un mensaje XML contra los XSD especificados (o contra el DTD, si no se especifica el XSD) antes de enviarlo al agente. Si el esquema especificado no puede ubicarse o el mensaje no puede validarse, el mensaje no se enviará, y se lanzará una excepción.
Las propiedades de la validación XML se pueden configurar en el momento de la creación del destino o en el momento de la actualización a través de los comandos imqcmd create dst o imqcmd update dst, respectivamente. Las propiedades de la validación XML deben configurarse cuando el destino esté inactivo: es decir, cuando no cuente con consumidores o productores, y cuando no haya mensajes en el destino.
Si no se puede acceder a un XSD durante el tiempo de ejecución, es posible que sea necesario modificar XMLSchemaURIList mientras esté activo el destino.
Si alguna de las propiedades de la validación XML se configura mientras que un destino está activo (por ejemplo, si un productor está conectado al destino), el cambio no tendrá lugar hasta que el productor se vuelva a conectar al agente. De igual forma, si se modifica un XSD, como resultado de la modificación de los requisitos de la aplicación, todas las aplicaciones cliente que produzcan mensajes XML basados en el XSD modificado deberán reconectarse al agente.
Si la propiedad reloadXMLSchemaOnFailure está configurada en true y la validación XML no se realiza de la forma correcta, el tiempo de ejecución del cliente de Información de resolución de problemas de intentará recargar el XSD antes de volver a intentar validar un mensaje. El tiempo de ejecución del cliente lanzará una excepción si la validación no se realiza correctamente al utilizar el SXD recargado.
Según el modelo de transacciones distribuidas X/Open, la compatibilidad con transacciones distribuidas se basa en un administrador de transacciones distribuidas que supervisa y administra las operaciones que realizan uno o más administradores de recursos. En Información de resolución de problemas de 4.2, la C-API de Message Queue es compatible con la interfaz XA (entre un administrador de transacciones distribuidas y Message Queue como administrador de recursos compatibles con XA), lo que permite a los clientes de C-API de Message Queue funcionar en un entorno de procesamiento de transacciones distribuidas (tales como BEA Tuxedo) con el fin de participar en transacciones distribuidas.
Esta compatibilidad con transacciones distribuidas cuenta con las siguientes nuevas funciones de C-API (y nuevos parámetros y códigos de error) que se utilizan para implementar la especificación de la interfaz XA:
MQGetXAConnection() MQCreateXASession()
Si la aplicación de un cliente de C se va a utilizar en el contexto de una transacción distribuida, debe obtener una conexión a través de MQGetXAConnection() y crear una sesión para producir y consumir mensajes mediante MQCreateXASession(). . El inicio, la confirmación y la anulación de cualquier transacción distribuida se administra a través de API suministradas a través del administrador de transacciones distribuidas.
La especificación de la interfaz XA de X/Open requiere la siguiente información pública con respecto al administrador de recursos compatibles con XA de Message Queue:
Nombre de la estructura xa_switch_t: sun_my_xa_switch
Nombre del Administrador de recursos: SUN_RM
La biblioteca C-API de MQ que se va a establecer como vínculo: mqcrt
La cadena xa_close y el formato: none
La cadena xa_open y el formato: nombre separado por â;â=pares de valores
Los siguientes pares de valores/nombre son compatibles:
Tabla 1–6 Pares de valores/nombre del administrador de recursos de Message Queue
Nombre |
Valor |
Descripción |
Predeterminado |
---|---|---|---|
dirección. |
host:port |
El sistema:puerto del servicio Portmapper del agente. |
localhost:7676 |
username |
string |
Nombre de usuario para conectarse al agente |
guest |
contraseña |
string |
Contraseña del nombre de usuario |
guest |
conntype |
TCPor SSL |
Tipo de protocolo de la conexión con el agente |
TCP |
trustedhost |
true/false |
Si el sistema del agente es de confianza (sólo aplicable a conntype=SSL) |
true |
certdbpath |
string |
Ruta completa hasta el directorio que contiene el certificado NSS y los archivos de la base de datos clave |
no definido |
clientid |
string |
Requerido únicamente para suscripciones duraderas JMS |
no definido |
reconecta |
entero |
El número de intentos de reconexión al agente (0 significa que no hay reconexiones) |
0 |
Para programar una aplicación que utilice transacciones distribuidas, crea un servicio del lado del servidor que se ejecuta en el entorno del administrador de transacciones y el código del lado del cliente que llama a las API del administrador de transacciones. Message Queue 4.2 incluye ejemplos de programación basados en el administrador de transacciones de Tuxedo. Estos ejemplos están ubicados en el directorio de programas de ejemplo de cada plataforma dentro del directorio ./C/tuxedo.
Este directorio incluye un archivo README que explica cómo configurar Tuxedo para utilizar el administrador de recursos de Message Queue y cómo crear los siguientes programas de ejemplo en el entorno de Tuxedo:
Programa de ejemplo |
Descripción |
---|---|
jmsserver.c |
Implementa los servicios de Tuxedo que envían y reciben mensajes a través de Message Queue. |
jmsclient_sender.c |
Cliente de Tuxedo que utiliza el servicio de producción de mensajes en el programa jmsserver.c . |
jmsclient_receiver.c |
Cliente de Tuxedo que utiliza el servicio de recepción de mensajes en el programa jmsserver.c . |
async_jmsserver.c |
Implementa un servicio de Tuxedo que consume de forma asíncrona mensajes a través de Message Queue. |
jmsclient_async_receiver.c |
Cliente de Tuxedo que utiliza el servicio de consumo de mensajes asíncrono del programa async_jmsserver.c. |
El instalador de Message Queue se ha mejorado para permitir el registro de Message Queue con Sun Connection, un servicio del sistema Sun que le ayuda a supervisar, organizar y mantener software y hardware de Sun.
Como parte de la instalación de Message Queue, puede elegir registrar Message Queue con Sun Connection. La información acerca del Message Queue instalado, como por ejemplo la versión, el nombre del sistema, el sistema operativo, la fecha de instalación y otra información básica se transmite de forma segura a la base de datos de Sun Connection. El servicio de inventario de Sun Connection puede ayudarle a organizar su hardware y software de Sun, mientras que el servicio de actualización puede informarle de las últimas soluciones de seguridad disponibles, actualizaciones recomendadas y mejoras con respecto a las funciones.
La siguiente pantalla del instalador se ha añadido a Información de resolución de problemas de 4.2 para el registro en Sun Connection:
El registro requiere que cuente con una cuenta Sun Online o que cree una. Si aún no tiene una cuenta, el instalador le proporcionará la siguiente pantalla para crear una cuenta Sun Online:
Puede registrar Message Queue durante la instalación utilizando las pantallas anteriores, o esperar a que la instalación finalice y ejecutar el instalador en el modo de sólo registro, de la siguiente manera:
# installer -r
El modo de sólo registro requiere que Información de resolución de problemas de 4.2 ya esté instalado y únicamente mostrará las pantallas del instalador relacionadas con el registro.
Información de resolución de problemas de 4.2 es compatible con la base de datos MySQL como almacén de datos basado en JDBC. MySQL Cluster Edition puede utilizarse como base de datos JDBC en el caso de un agente independiente, y MySQL Cluster Edition puede utilizarse como el almacén de datos compartido altamente disponible necesario para obtener un clúster de agente de alta disponibilidad. Para obtener información acerca de cómo configurar Información de resolución de problemas de para utilizar MySQL, consulte Configuring a JDBC-Based Data Store de Sun Java System Message Queue 4.2 Administration Guide así como High-Availability Cluster Properties de Sun Java System Message Queue 4.2 Administration Guide.
Información de resolución de problemas de 4.1 fue una versión menor que incluía nuevas funciones, mejoras relacionadas con las funciones y soluciones a fallos. Esta sección describe las nuevas funciones de la versión 4.1 y le ofrece más referencias para su uso:
Para conseguir información sobre las funciones nuevas de Message Queue 4.0, consulte Nuevas funciones de Información de resolución de problemas de 4.0.
Información de resolución de problemas de 4.1 ha introducido clústeres de agente de alta disponibilidad. En comparación con los clústeres de agente convencionales, que sólo ofrecen disponibilidad de servicio de mensajería (si un agente tiene algún problema, hay otro agente disponible para ofrecer el servicio de mensajería), los clústeres de agente de alta disponibilidad también incluyen disponibilidad de datos (si un agente tiene algún problema, están disponibles sus mensajes persistentes y sus datos de estado para que otro agente lo utilice con el fin de hacerse cargo de la entrega de mensajes).
La implementación de alta disponibilidad que se incluye en Información de resolución de problemas de 4.1 utiliza un almacén de datos basado en JDBC: en lugar de tener cada agente de un clúster de agente su propio almacén de datos persistente, todos los agentes del clúster comparten la misma base de datos compatible con JDBC. Si un agente en particular tiene algún error, otro agente del clúster asume el enrutamiento y la entrega del mensaje del agente del fallo. Al hacer esto, el agente del error utiliza datos e información sobre el estado en el almacén de datos compartido. Los clientes de mensajería del agente que ha causado el error se reconectan a dicho agente, que ofrece un servicio de mensajería sin interrupciones.
El almacén compartido basado en JDBC utilizado en la implementación de alta disponibilidad de Información de resolución de problemas de 4.1 debe ser de por sí altamente disponible. Si no cuenta con una base de datos altamente disponible o si la entrega de mensajes ininterrumpida no le resulta importante, puede continuar utilizando clústeres convencionales, que ofrecen disponibilidad de servicios sin disponibilidad de datos.
Para configurar un clúster de agente altamente disponible de Información de resolución de problemas de 4.1, debe especificar las siguientes propiedades del agente en cada agente del clúster:
Propiedades de pertenencia a clúster, que sirven para especificar si el agente forma parte de un clúster de agente de alta disponibilidad, el ID del clúster y el ID del agente del clúster.
Propiedades de la base de datos altamente disponible, que especifican el modelo de datos persistentes (JDBC), el nombre del proveedor de la base de datos y las propiedades de configuración específicas del proveedor.
Detección de fallos y propiedades de error, que especifica cómo se detecta el fallo del agente y cómo se administra mediante un agente de error.
Para utilizar la implementación del clúster de agente de alta disponibilidad, debe hacer lo siguiente:
Instalar una base de datos de alta disponibilidad.
Instalar el archivo .jar del controlador de JDBC.
Crear el esquema de la base de datos para el almacén de datos persistente de alta disponibilidad.
Establecer propiedades de alta disponibilidad para cada agente del clúster.
Iniciar cada uno de los agentes del clúster.
Si desea consultar una explicación del concepto de clústeres de agente de alta disponibilidad y una comparación con los clústeres convencionales, consulte el Capítulo 4, Broker Clusters de Sun Java System Message Queue 4.2 Technical Overview. Si desea información sobre procedimientos y referencias de los clústeres de agente de alta disponibilidad, consulte el Capítulo 10, Configuring and Managing Broker Clusters de Sun Java System Message Queue 4.2 Administration Guide y Cluster Configuration Properties de Sun Java System Message Queue 4.2 Administration Guide.
Si ha estado utilizando una base de datos de alta disponibilidad con Información de resolución de problemas de 4.0 y desea cambiar a un clúster de agente de alta disponibilidad, puede utilizar la utilidad Administrador de bases de datos (imqdbmgr para pasarse a un almacén de datos persistente compartido. De igual forma, consulte Clústeres de agente para conocer más problemas y limitaciones.
Además de los mecanismos de autenticación basados en archivos y en LDAP que integra, Información de resolución de problemas de 4.1 también es compatible con Java Authentication y Authorization Service (JAAS), que le permite conectar un mecanismo de autenticación externo al agente para autenticar los clientes de Message Queue.
Para obtener una descripción de la información que un agente pone a su disposición en un servicio de autenticación compatible con JAAS y una explicación acerca de cómo configurar el agente para utilizar dicho servicio, consulte Using JAAS-Based Authentication de Sun Java System Message Queue 4.2 Administration Guide.
Información de resolución de problemas de 4.1 modificó el almacén de datos basado en JDBC para dar soporte a clústeres de agente de alta disponibilidad. Por esta razón, el formato del almacén de datos basado en JDBC ha aumentado a la versión 410. Las versiones de los formatos 350, 370 y 400 migran automáticamente a la versión 410.
Tenga en cuenta que el formato del almacén de datos persistente basado en archivos permanece en la versión 370 dado que no se realizaron cambios en el mismo.
La propiedad IMQ_DEFAULT_EXT_JARS se ha añadido al archivo de configuración del entorno de Información de resolución de problemas de 4.1, imqenv.conf. Puede configurar esta propiedad para especificar el nombre de las rutas de los archivos .jar que deben incluirse en CLASSPATH al iniciarse el agente. Si utiliza esta propiedad para especificar la ubicación de los archivos .jar externos, ya no necesitará copiar estos archivos en el directorio lib/ext. Los archivos .jar externos pueden hacer referencia a los controladores de JDBC o a módulos de registro JAAS. La siguiente propiedad de ejemplo especifica la ubicación de los controladores JDBC.
IMQ_DEFAULT_EXT_JARS=/opt/SUNWhadb4/lib/hadbjdbc4.jar:/opt/SUNWjavadb/derby.jar
Información de resolución de problemas de 4.1 ha incluido la compatibilidad con Sun Java Enterprise System (Java ES) Monitoring Framework, que permite controlar los componentes de Java ES mediante una interfaz gráfica común. La interfaz se implementa mediante una consola basada en web llamada "Sun Java System Monitoring Console". Los administradores pueden utilizar la Consola para ver las estadísticas de rendimiento, crear reglas para realizar un control automático y alarmas de confirmación. Si ejecuta Message Queue junto con otros componentes de Java ES, le resultará más cómodo gestionar todos los componentes con una única interfaz.
Para obtener más información sobre cómo utilizar la función Java ES Monitoring Framework para controlar Message Queue, consulte XREF.
Anteriormente, los administradores sólo podían deshacer transacciones que estuvieran en estado PREPARED Es decir, si una sesión que formara parte de una transacción distribuida no terminaba correctamente, la transacción permanecía en un estado que era imposible reorganizar para el administrador. En Información de resolución de problemas de 4.1, puede utilizar la utilidad Comando (imqcmd) para reorganizar (deshacer) transacciones que se encuentran en los siguientes estados: STARTED, FAILED, INCOMPLETE, COMPLETE y PREPARED.
Para ayudarle a determinar si es posible deshacer una transacción particular (sobre todo si no se encuentra en estado PREPARED), la utilidad Comando proporciona datos adicionales como parte de la salida imqcmd query txn: proporciona el ID de la conexión que inició la transacción y especifica la hora en la que se creó la transacción. Basándose en esta información, el administrador puede decidir si es preciso deshacer o no la transacción. Por lo general, el administrador debe evitar deshacer una transacción prematuramente.
En Información de resolución de problemas de 4.1, los clientes de C, como los clientes Java, pueden conectarse a un puerto de agente fijo en lugar de a un puerto asignado dinámicamente por el servicio Port Mapper del agente. Las conexiones a puertos fijos son útiles si intenta utilizar un servidor de seguridad o si necesita omitir el servicio Port Mapper por alguna otra razón.
Para configurar una conexión a puerto fija, debe configurar el agente y el tiempo de ejecución del cliente de C (ambos extremos de la conexión). Por ejemplo, si desea conectar a su cliente con el puerto 1756 mediante ssljms, tendría que hacer lo siguiente:
En el lado del cliente, establezca las siguientes propiedades:
MQ_SERVICE_PORT_PROPERTY=1756
MQ_CONNECTION_TYPE_PROPERTY=SSL
En el lado del agente, establezca la propiedad imq.serviceName.protocolType .port de la siguiente manera:
imq.ssljms.tls.port=1756
La propiedad de conexión MQ_SERVICE_PORT_PROPERTY ha pasado al puerto anterior de Message Queue 3.7 Update 2.
Información de resolución de problemas de 4.0 fue una versión menor que se limitaba a ser compatible con Application Server 9 PE. Incluía algunas nuevas funciones, algunas mejoras relacionadas con las funciones y soluciones a fallos. Esta sección incluye una descripción de las nuevas funciones de esta versión:
Uno de los cambios más insignificantes que incorporaba la versión 4.0, pero que puede provocar interrupciones, era la desaprobación de la opción command-line para especificar una contraseña. De ahora en adelante, debe guardar todas las contraseñas en un archivo tal y como se describe en Opción de contraseña desaprobada, o introducirlas cuando se le soliciten.
Se ha añadido una nueva API a Message Queue 4.0 para configurar y supervisar los agentes de Información de resolución de problemas de de conformidad con la especificación de Java Management Extensions (JMX). Con esta API, puede configurar y supervisar las funciones de agente de forma pragmática desde una aplicación Java. En versiones anteriores de Información de resolución de problemas de, sólo era posible acceder a estas funciones desde las utilidades de administración de la línea de comando o la consola de administración.
Para obtener más información consulte la Sun Java System Message Queue 4.2 Developer’s Guide for JMX Clients.
Información de resolución de problemas de 4.0 incluyó la compatibilidad con el registro de conexión del tiempo de ejecución del cliente y eventos relacionados con las sesiones.
Para obtener más información en relación al registro del tiempo de ejecución del cliente y a cómo configurarlo, consulte la pág. 137 de la Guía de Java Dev.
Información de resolución de problemas de 4.0 incluyó una API de notificación de sucesos que permite que el tiempo de ejecución de cliente informe a una aplicación sobre los cambios en el estado de conexión. Las notificaciones de los sucesos de conexión permiten al cliente de Message Queue escuchar los sucesos de cierre y reconexión, y tomar las medidas oportunas en función del tipo de notificación y del estado de conexión. Por ejemplo, si se produce un error y el cliente se vuelve a conectar a otro agente, es posible que una aplicación quiera limpiar el estado de su transacción y proceder con una nueva.
Para obtener información acerca de los eventos de conexión y sobre cómo crear un receptor de eventos, consulte la pág. 96 de la Guía de Java Dev.
En Información de resolución de problemas de 4.0, se añadieron varias opciones de comando y un nuevo subcomando a la utilidad Comando (imqcmd) para permitir a los administradores desactivar un agente, cerrar un agente tras un intervalo específico, destruir una conexión o establecer propiedades del sistema java (por ejemplo, propiedades relacionadas con la conexión).
Al desactivar el agente, éste pasa a un estado inactivo, lo cual permite drenar los mensajes antes de cerrar o reiniciar el agente. No es posible crear conexiones nuevas con un agente que está desactivado. Para desactivar el agente, introduzca un comando como el siguiente:
imqcmd quiesce bkr -b Wolfgang:1756
Para que el agente se cierre después del intervalo especificado, introduzca un comando como el siguiente: (El intervalo de tiempo especifica el número de segundos que debe transcurrir para que se cierre el agente.)
imqcmd shutdown bkr -b Hastings:1066 -time 90
Si especifica un intervalo de tiempo, el agente registrará un mensaje indicando cuándo se producirá el cierre. Por ejemplo:
El agente se cerrará en 29 segundos (29996 milisegundos)
Mientras el agente espera a que se produzca el cierre, su comportamiento se verá afectado de la siguiente forma:
Seguirá aceptando las conexiones jms administrativas.
No aceptará nuevas conexiones jms.
Las conexiones jms existentes continuarán funcionando.
El agente no podrá sustituir a ningún otro agente de un clúster de agente de alta disponibilidad.
La utilidad imqcmd no se bloqueará, sino que enviará la solicitud de cerrar el agente e informará inmediatamente.
Para destruir una conexión, introduzca un comando como el siguiente:
imqcmd destroy cxn -n 2691475382197166336
Utilice los comandos imqcmd list cxn o imqcmd query cxn para obtener el ID de conexión.
Para establecer una propiedad con imqcmd, utilice la nueva opción –D. Es útil para establecer o anular las propiedades de fábrica de la conexión JMS o las propiedades del sistema java relacionadas con la conexión. Por ejemplo:
imqcmd list svc -secure -DimqSSLIsHostTrusted=true imqcmd list svc -secure -Djavax.net.ssl.trustStore=/tmp/mytruststore -Djavax.net.ssl.trustStorePassword=mytrustword
Encontrará toda la información sobre la sintaxis del comando imqcmd en el Capítulo 15, Command Line Reference de Sun Java System Message Queue 4.2 Administration Guide.
En Información de resolución de problemas de 4.0 se añadió un nuevo subcomando query a la utilidad Administrador de bases de datos, imqdbmgr. Este subcomando se utiliza para mostrar información sobre el almacén de datos basado en JDBC, como la versión de la base de datos, el usuario de la base de datos y si se han creado las tablas de la base de datos.
A continuación, se muestra un ejemplo de la información mostrada por este comando.
imqdbmgr query |
[04/Oct/2005:15:30:20 PDT] Utilizando el almacén persistente conectado: versión=400 Iddebroker=Mozart1756 url de la conexión de la base de datos=jdbc:oracle:thin:@Xhome:1521:mqdb usuario de la base de datos=scott Ejecutándose en modo individual. Ya se han creado las tablas de la base de datos. |
En Información de resolución de problemas de 4.0, Apache Derby Version 10.1.1 ya es compatible como proveedor de almacén de datos basado en JDBC.
Información de resolución de problemas de 4.0 introdujo cambios en el almacén de datos basado en JDBC para obtener optimización y para dar soporte a futuras mejoras. Por esta razón el formato del almacén de datos basado en JDBC aumentó a la versión 400. Tenga en cuenta que en Message Queue 4.0, la versión del almacén de datos basado en archivos permanece en 370 dado que no se han realizado cambios. .
Información de resolución de problemas de 4.0 añadió dos nuevas propiedades que están configuradas en todos los mensajes ubicados en la cola de mensajes inactivos.
JMS_SUN_DMQ_PRODUCING_BROKER indica al agente dónde se generó el mensaje.
JMS_SUN_DMQ_DEAD_BROKER indica al agente quién marcó el mensaje como inactivo.
Desde la versión Información de resolución de problemas de 4.0, el valor predeterminado de la propiedad de fábrica de la conexión del cliente imqSSLIsHostTrusted es false. Si su aplicación depende del valor predeterminado anterior true, deberá cambiar la configuración y establecer la propiedad explícitamente a true.
Puede elegir si desea confiar en el host cuando el agente está configurado para utilizar certificados autofirmados. En este caso, además de especificar que la conexión debe usar un servicio de conexión basado en SSL (con la propiedad imqConnectionType), debería establecer la propiedad imqSSLIsHostTrusted en verdadera (true).
Por ejemplo, para ejecutar de forma segura las aplicaciones del cliente cuando el agente utiliza certificados autofirmados, utilice un comando como el siguiente:
java -DimqConnectionType=TLS -DimqSSLIsHostTrusted=true ClientAppName
Para utilizar la utilidad Comando (imqcmd) de forma segura cuando el agente utiliza certificados autofirmados, utilice un comando como el siguiente (para enumerar los servicios del conector).
imqcmd list svc -secure -DimqSSLIsHostTrusted=true
La supervisión basada en mensajes, que le permite controlar el agente y sus destinos mediante información sobre métodos de medición escritos en los destinos de temas de medición, se desaprobará en futuras versiones.
La supervisión basada en mensajes hace uso del Productor de mensajes de medición configurable del agente para escribir datos de medición en mensajes JMS, que se envían a continuación a destinos de temas de medición, en función del tipo de información sobre medición que contengan los mensajes. Puede acceder a esta información sobre medición escribiendo una aplicación de cliente que se suscriba al destino de temas de medición adecuado, consuma sus mensajes y procese los datos según desee.
La función de supervisión basada en mensajes ha sido sustituida por la API de administración JMX que se implementó en MQ 4.0 (consulte Compatibilidad con el API de administración JMX). La API JMX es más completa (incluye más datos sobre medición que los que aparecen en los destinos de temas) y está basada en el estándar del mercado JMX.
No hay razón de peso para utilizar la supervisión basada en mensajes ahora que Información de resolución de problemas de es compatible con la API JMX. La información sobre la supervisión basada en mensajes permanecerá en la documentación de Información de resolución de problemas de hasta que la función se desapruebe formalmente.
Información de resolución de problemas de 4.2 incluye nuevas soluciones a fallos y también incorpora errores que se resolvieron en las versiones Información de resolución de problemas de 4.1 y Información de resolución de problemas de 4.0.
Las siguientes secciones enumeran errores que se resolvieron en sus respectivas versiones:
Errores solucionados en Información de resolución de problemas de 4.2
Errores solucionados en Información de resolución de problemas de 4.1
Errores solucionados en Información de resolución de problemas de 4.0
La siguiente tabla muestra los errores solucionados en Información de resolución de problemas de 4.2.
La siguiente tabla debe incluir los errores que merecen ser mencionados y que se solucionaron en el parche 1 de 4.1 y en el parche 2 de 4.1. Necesito ayuda para determinar dichos errores. De igual forma, ¿existen errores solucionados adicionales que no se incluyan en los que ya se han mencionado?
Error |
Descripción |
---|---|
6581592 |
Cuando el instalador o el desinstalador se ejecutan en modo texto (installer –t ), la pantalla Resumen muestra el directorio que contiene los archivos de registro y de resumen pero no enumera los nombres de estos archivos. |
6585911 |
La pantalla Selección de JDK del instalador incluye incorrectamente el JRE que se incluye con el instalador y que se utiliza para ejecutar el instalador. |
6587112 |
La pantalla de resumen del instalador muestra elementos no utilizados en los configuraciones regionales de varios bytes. |
6587127 |
Al ejecutar el instalador haciendo referencia a un archivo de respuesta (installer -a filename -s), si el archivo de respuesta no existe, los mensajes de error serán incoherentes y confusos. |
6590969 |
Permite el formato de nombre de usuario DN en la autenticación de conexión del cliente. |
6594381 |
La instalación de los RPM de localización de Message Queue 4.1 (que aparece cuando selecciona la casilla de verificación âInstalar paquetes multilingües de Message Queueâ en la pantalla Paquetes multilingües) no se realizará correctamente si ya existen en su sistema RPM de localización de Message Queue. |
6599144 |
Cuando desinstale Message Queue 4.2, la pantalla de presentación y las pantallas y los márgenes del desinstalador aparecerán vacíos y grises en la versión Java SE 6, pero funcionarán en Java SE 5. |
6615741 |
El mensaje entregado en una sesión de consumidor transaccionada que se ha deshecho no se volverá a entregar si el consumidor original cerró antes de deshacerla. |
6629922 |
El controlador de transacciones distribuidas no volverá a enviar mensajes a un consumidor inactivo en el orden correcto. |
6635130 |
El agente no informa correctamente al productor sobre mensajes no persistentes para reanudar la producción tras haber realizado una pausa porque el destino ha alcanzado el límite de mensajes o memoria. |
6641117 |
El mensaje entregado en una sesión de consumidor transaccionada que se ha deshecho no se volverá a entregar si el consumidor original cerró después de deshacerla. |
6683897 |
La pantalla de resumen del instalador de Message Queue realiza informes sobre el error de configuración aunque la configuración finalice aparentemente de forma correcta: el instalador no puede escribir a /dev/sterr en algunos equipos. |
6684069 |
En el clúster de agente en el que se entrega un gran número de mensajes al cliente remoto en las transacciones de consumidor, la transacción de confirmación no se realiza correctamente. |
6688935 |
El valor predeterminado del tiempo de espera de lectura de Portmapper es demasiado pequeño. |
6695238 |
Las aplicaciones de cliente de C no se pueden conectar a un agente instalado en una ubicación que tenga espacios en la ruta. |
6710168 |
El consumidor ya no consume mensajes si se realizan dos pausas en el destino sin reanudar el proceso entre las pausas. |
6710169 |
El funcionamiento de JMX ConsumerManagerMonitor.getConsumerInfo siempre devuelve SESSION_TRANSACTED en el modo de confirmación. |
La siguiente tabla muestra los errores solucionados en Información de resolución de problemas de 4.1.
Tabla 1–8 Errores solucionados en Message Queue 4.1
Error |
Descripción |
---|---|
6381703 |
Los mensajes remotos tramitados pueden confirmarse dos veces si se reinicia el agente que lo ha originado. |
6388049 |
No es posible deshacer una transacción distribuido incompleta |
6401169 |
Las opciones "confirmar" y "deshacer" de imqcmd no muestran un mensaje de confirmación. |
6473052 |
El valor predeterminado de las colas autocreadas debería ser "round robin" (operación por turnos). (MaxNumberConsumers = -1). |
6474990 |
El registro del agente muestra ConcurrentModificationException para el comando imqcmd list dst. |
6487413 |
Se produce una pérdida de memoria cuando el comportamiento límite es REMOVE_OLDEST o REMOVE_LOWER_PRIORITY. |
6488340 |
El agente hace un "giro" y el cliente espera a que se atienda la respuesta. |
6502744 |
El agente no cumple el límite predeterminado de 1000 mensajes de la cola de mensajes inactivos. |
6517341 |
El tiempo de ejecución del cliente tiene que mejorar la lógica de reconexión cuando el cliente se conecta con un clúster de agente de alta disponibilidad y permitir al cliente volver a conectarse con independencia del valor de la propiedad imqReconnectEnabled. |
6528736 |
El servicio de inicio automático de Windows (imqbrokersvc) se bloquea durante el inicio. |
6561494 |
Los mensajes se entregan al consumidor equivocado cuando ambos comparten una sesión. |
6567439 |
Los mensajes generados en una transacción PREPARED se entregan sin orden si se confirman después de que se reinicie el agente. |
La siguiente tabla muestra los errores solucionados en Información de resolución de problemas de 4.0.
Tabla 1–9 Errores solucionados en Información de resolución de problemas de 4.0
Número de error |
Descripción |
---|---|
4986481 |
En Información de resolución de problemas de 3.5, la invocación de Session.recover podría bloquearse en el modo de conexión automática. |
4987325 |
El indicador de nueva entrega se establecía en false en mensajes entregados de nuevo después de invocar a Session.recover. |
6157073 |
Cambiar el mensaje de nueva conexión para que incluya el número de conexiones que se encuentran en el servicio además del número total de conexiones. |
6193884 |
Información de resolución de problemas de muestra un mensasyslogura en syslog en configuraciones regionales que utilizan caracteres no ASCII en los mensajes. |
6196233 |
No funciona la selección de mensajes con JMSMessageID. |
6251450 |
ConcurrentModificationException en connectList durante apagado de clúster. |
6252763 |
java.nio.BufferOverflowException en java.nio.HeapByteBuffer.putLong/Int . |
6260076 |
El primer mensaje publicado tras el inicio es lento cuando utiliza almacenamiento Oracle. |
6260814 |
El procesamiento del Selector en JMSXUserID siempre evalúa como falso. |
6264003 |
El explorador de colas muestra mensajes que son parte de transacciones no confirmadas. |
6271876 |
El control de flujo de la conexión no funciona correctamente cuando se cierra un consumidor que tiene mensajes no consumidos. |
6279833 |
Información de resolución de problemas de no debería permitir que dos agentes utilicen las mismas tablas jdbc. |
6293053 |
El agente maestro no se inicia correctamente cuando cambia la dirección IP del sistema, a menos que se borre el almacén (con —reset store.) |
6294767 |
El agente de Información de resolución de problemas de tiene que establecer SO_REUSEADDR en los sockets de la red que abra. |
6304949 |
No es posible configurar la propiedad ClientID de TopicConnectionFactory. |
6307056 |
El registro txn tiene un efecto adverso sobre el rendimiento. |
6320138 |
La API de C de Información de resolución de problemas de no tiene la capacidad de determinar el nombre de una cola de una cabecera de respuesta. |
6320325 |
El agente a veces utiliza JDK 1.4 en vez de JDK 1.5 en Solaris, incluso si ambas versiones se encuentran instaladas. |
6321117 |
El clúster de múltiples agentes lanza la excepción java.lang.NullPointerException . |
6330053 |
El cliente de jms devuelve java.lang.NoClassDefFoundError al confirmar una transacción desde el suscriptor. |
6340250 |
Compatibilidad con el tipo MESSAGE en el API de C. |
6351293 |
Se incluye compatibilidad con la base de datos Apache Derby. |
Esta sección contiene información relacionada con las actualizaciones de documentación de Message Queue 4.2:
Cambios en el conjunto de documentación de Información de resolución de problemas de 4.2
Compatibilidad con formato de nombre de usuario DN para la autenticación del cliente
En esta sección se tratan los problemas de compatibilidad de Información de resolución de problemas de 4.2.
Sun Java System Información de resolución de problemas de utiliza muchas interfaces que pueden cambiar con el tiempo. El Apéndice B, Stability of Message Queue Interfaces de Sun Java System Message Queue 4.2 Administration Guide incluye una clasificación de las interfaces según su estabilidad. Cuanto más estable sea la interfaz, menos probable es que cambie en las siguientes versiones del producto.
La próxima versión importante de Información de resolución de problemas de puede introducir cambios que hagan que las aplicaciones de los clientes de Información de resolución de problemas de dejen de ser compatibles con el producto. Esta información puede ser revelada completamente.
Las ubicaciones de los archivos instalados como parte de Sun Java System Información de resolución de problemas de pueden cambiar. Esto puede hacer que dejen de funcionar algunas de las aplicaciones que dependen de la ubicación actual de archivos de Información de resolución de problemas de.
Es posible que el agente Información de resolución de problemas de 3.5 y agentes anteriores dejen de funcionar en un clúster con agentes más recientes.
En futuras versiones, es posible que los clientes de Información de resolución de problemas de no puedan utilizar versiones de JDK anteriores a la 1.5.
En futuras versiones, es posible que los clientes de Información de resolución de problemas de no puedan utilizar versiones de JDK anteriores a la 1.6.
El conjunto de documentación de Información de resolución de problemas de 4.2 incluye actualizaciones al conjunto de documentación de Message Queue 4.1 tal y como se describe a continuación:
La Sun Java System Message Queue 4.2 Installation Guide se ha actualizado para reflejar nuevas funciones de Message Queue 4.2 y una estructura actualizada para obtener clústeres de agente de alta disponibilidad.
La Guía de administración se ha actualizado para reflejar nuevas funciones de Información de resolución de problemas de 4.2.
La Sun Java System Message Queue 4.2 Installation Guide no se ha actualizado para reflejar nuevas funciones de Información de resolución de problemas de 4.2, específicamente la nueva funcionalidad de registro de Sun Connect del instalador. Esta información se incluye en estas Notas de la versión de Message Queue
La Guía del desarrollador para clientes Java no se ha actualizado para reflejar nuevas funciones de Información de resolución de problemas de 4.2. Esta información se incluye en estas Notas de la versión de Message Queue
La Guía del desarrollador para clientes C no se ha actualizado para reflejar nuevas funciones de Información de resolución de problemas de 4.2. Esta información se incluye en estas Notas de la versión de Message Queue
no se ha actualizado para reflejar nuevas funciones de Información de resolución de problemas de 4.2. Esta información se incluye en estas Notas de la versión de Message Queue
Información de resolución de problemas de 4.2 incluye nuevos métodos de medición de destino que pueden resultar útiles a la hora de controlar destinos en un clúster de agente. En un clúster de agente, los destinos se propagan a todos los agentes del clúster. Sin embargo, un mensaje, cuando se produce, se guarda en el destino del agente de inicio del productor del mensaje, y se envía al destino correspondiente en otro agente del clúster sólo si existe un consumidor activo para dicho destino. Como resultado, los mensajes guardados en un destino específico dependen del agente del clúster en el que reside el destino.
Dicho de otra manera, en un clúster de agente, los mensajes guardados en un destino dado en un determinado agente del clúster, constan de mensajes producidos directamente en el destino y mensajes enviados al destino desde los agentes remotos del clúster. Al analizar el enrutamiento y la entrega de mensajes en un clúster de agente, a veces resulta útil saber cuántos mensajes de un destino son locales (se han producido localmente) y cuántos son remotos (se han producido de forma remota).
La siguiente tabla muestra dos nuevas cantidades de medición de destino físico que se incluyen en Información de resolución de problemas de 4.2. Las nuevas cantidades de medición están disponibles a través de los comandos imqcmd list dst y imqcmd query dst y a través de los atributos JMX (consulte MBean de control de destinos.
Tabla 1–10 Método de medición de destinos físicos
Cantidad de medición |
Descripción |
¿Archivo de registro? |
Tipo de medición metrics dst |
Tema de medición |
---|---|---|---|---|
Número de mensajes remotos |
Número actual de mensajes guardados en la memoria y en el almacén persistente que se produjeron para un agente remoto en un clúster. Este número no incluye los mensajes incluidos en las transacciones. |
No |
No disponible |
|
Bytes totales de los mensajes remotos |
Tamaño total actual en bytes de los mensajes guardados en la memoria y en el almacén persistente que se produjeron para un agente remoto en un clúster. Este valor no incluye los mensajes incluidos en las transacciones. |
No |
No disponible |
No disponible |
Esta sección describe cómo configurar el inicio automático del agente en los sistemas operativos Solaris 10. En lugar de utilizar un archivo rc para implementar el inicio automático del agente cuando se reinicia un equipo, el siguiente procedimiento hace uso de la facilidad de gestión de servicios (SMF) de Solaris 10.
Para obtener más información sobre cómo utilizar la facilidad de gestión de servicios, consulte la documentación de Solaris 10.
Importe el servicio mqbroker en el almacén de SMF.
# svccfg import /var/svc/manifest/application/sun/mq/mqbroker.xml
Compruebe que la importación se ha realizado correctamente comprobando el estado del servicio mqbroker.
# svcs mqbroker
La salida de datos tiene un aspecto similar al siguiente.
STATE STIME FMRI disabled 16:22:50 svc:/application/sun/mq/mqbroker:default |
Inicialmente, el servicio se muestra como desactivado.
Active el servicio mqbroker.
# svcadm enable svc:/application/sun/mq/mqbroker:default
Al activar el servicio mqbroker se iniciará el proceso imqbrokerd. A continuación, se reiniciará el agente.
Configure el servicio mqbroker para pasar los argumentos que desee al comando imqbrokerd.
La propiedad options/server_args se utiliza para pasar argumentos aimqbrokerd. Por ejemplo, para añadir -loglevel DEBUGHIGH, siga los siguientes pasos:
# svccfg svc:> select svc:/application/sun/mq/mqbroker svc:/application/sun/mq/mqbroker> setprop options/server_args=\"-loglevel DEBUGHIGH\" svc:/application/sun/mq/mqbroker> exit |
Información de resolución de problemas de es compatible con la API Java Management Extensions (JMX) para configurar y controlar las funciones del agente mediante el programa desde una aplicación de cliente Información de resolución de problemas de. Información de resolución de problemas de 4.2 incluye extensiones de la API JMX para dar soporte a las nuevas funciones y funcionalidades de la versión. Los nuevos atributos JMX, operaciones y/o claves de búsqueda se definen para los siguientes Mbeans:
Los atributos, operaciones y claves de búsqueda de las siguientes tablas son compatibles con la función descrita en Varios destinos para un editor o suscriptor.
El nombre de los siguientes atributos se define como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ConsumerAttributes .
Tabla 1–11 Atributos de control de consumidor/administrador
Nombre |
Tipo |
¿Se puede configurar? |
Descripción |
---|---|---|---|
NumWildcardConsumers |
Integer |
No |
Número de consumidores de mensajes comodín relacionados con el agente |
Los nombres de las siguientes operaciones se definen como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ConsumerOperations .
Tabla 1–12 Operaciones de control de consumidor/administrador
Nombre |
Parámetros |
Tipo de resultado |
Descripción |
---|---|---|---|
getConsumerWildcards |
none |
String[] |
Cadenas comodín utilizadas por los consumidores actuales relacionadas con el agente |
getNumWildcardConsumers |
Cadena comodín |
Integer |
Número de consumidores actuales relacionados con el agente que están utilizando la cadena comodín especificada |
Las siguientes claves de búsqueda se definen como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ConsumerInfo.
Tabla 1–13 Claves de búsqueda para la información del consumidor de mensajes
Nombre |
Tipo de valor |
Descripción |
---|---|---|
DestinationNames |
String[] |
Nombres de destinos que coinciden con comodines utilizados por los consumidores de comodines Sólo para destinos de temas. |
Wildcard |
Boolean |
¿Consumidor de comodines? Sólo para destinos de temas. |
Los atributos de la siguiente tabla son compatibles con la función que de describe en Validación de esquemas de mensajes de datos útiles XML.
Los nombres de los siguientes atributos se definen como comandos estáticos en la clase de utilidad com.sun.messaging.jms.management.server.DestinationAttributes .
Tabla 1–14 Atributos de configuración de destinos
Nombre |
Tipo |
¿Se puede configurar? |
Descripción |
---|---|---|---|
ValidateXMLSchemaEnabled |
Boolean |
Sí |
¿Se ha activado la validación de esquemas XML? Si está configurada en false o no está configurada, la validación de esquemas XML no se activará para el destino. |
XMLSchemaURIList |
String |
Sí |
Lista separada por espacios de cadenas URI de documentos de esquemas XML (XSD) Los URI señalan la ubicación de uno o más XSD que se van a utilizar para realizar la validación de esquemas XML, si está activada. Utilice comillas dobles en este valor si se especifican varios URI. Ejemplo: âhttp://foo/flap.xsd http://test.com/test.xsdâ Si esta propiedad no está configurada o es nula y se ha activado la validación XML, la validación XML se realizará mediante un DTD especificado en el documento XML. |
ReloadXMLSchemaOnFailure |
Boolean |
Sí |
¿Se ha activado la recarga del esquema XML en caso de error? Si está configurado en falso o no está configurada, el esquema no se recargará si la validación no se realiza correctamente. |
Los nuevos atributos del MBean de configuración de destinos, que se mencionan anteriormente y que son compatibles con la nueva función, Validación de esquemas de mensajes de datos útiles XML, se pueden utilizar para crear un destino mediante la operación create del MBean de configuración del administrador de destinos.
El primer conjunto de atributos de la siguiente tabla es compatible con la función que se describe en Varios destinos para un editor o suscriptor y el segundo conjunto de atributos es compatible con la mejora que se describe en Nuevo método de medición de destino.
Los nombres de los siguientes atributos se definen como comandos estáticos en la clase de utilidad com.sun.messaging.jms.management.server.DestinationAttributes .
Tabla 1–15 Atributos de control de destinos
Nombre |
Tipo |
¿Se puede configurar? |
Descripción |
---|---|---|---|
NumWildcards |
Integer |
No |
Número actual de productores de mensajes comodín y consumidores de mensajes comodín relacionados con el destino Sólo para destinos de temas. |
NumWildcardProducers |
Integer |
No |
Número actual de productores de mensajes comodín relacionados con el destino Sólo para destinos de temas. |
NumWildcardConsumers |
Integer |
No |
Número actual de consumidores de mensajes comodín relacionados con el destino Sólo para destinos de temas. |
NumMsgsRemote |
Long |
No |
Número actual de mensajes guardados en la memoria y en el almacén persistente que se produjeron para un agente remoto en un clúster. Este número no incluye los mensajes incluidos en las transacciones. |
TotalMsgBytesRemote |
Long |
No |
Tamaño total en bytes de los mensajes guardados en la memoria y en el almacén persistente que se produjeron para un agente remoto en un clúster. Este valor no incluye los mensajes incluidos en las transacciones. |
Las operaciones de la siguiente tabla son compatibles con la función descrita en Varios destinos para un editor o suscriptor.
Los nombres de las siguientes operaciones se definen como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.DestinationOperations .
Tabla 1–16 Operaciones de control de destinos
Nombre |
Parámetros |
Tipo de resultado |
Descripción |
---|---|---|---|
getWildcards |
none |
String[] |
Cadenas comodín utilizadas por los consumidores y productores actuales relacionados con el destino Sólo para destinos de temas. |
getConsumerWildcards |
none |
String[] |
Cadenas comodín utilizadas por los consumidores actuales relacionados con el destino Sólo para destinos de temas. |
getProducerWildcards |
none |
String[] |
Cadenas comodín utilizadas por los productores actuales relacionados con el destino Sólo para destinos de temas. |
getNumWildcardConsumers |
Cadena comodín |
Integer |
Número de consumidores actuales relacionados con el destino que están utilizando la cadena comodín especificada Sólo para destinos de temas. |
getNumWildcardProducers |
Cadena comodín |
Integer |
Número de productores actuales relacionados con el destino que están utilizando la cadena comodín especificada Sólo para destinos de temas. |
Los atributos, operaciones y claves de búsqueda de las siguientes tablas son compatibles con la función descrita en Varios destinos para un editor o suscriptor.
El nombre de los siguientes atributos se define como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ProducerAttributes .
Tabla 1–17 Atributos de control de productor/administrador
Nombre |
Tipo |
¿Se puede configurar? |
Descripción |
---|---|---|---|
NumWildcardProducers |
Integer |
No |
Número de productores de mensajes comodín relacionados con el agente |
Los nombres de las siguientes operaciones se definen como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ProducerOperations .
Tabla 1–18 Operaciones de control de productor/administrador
Nombre |
Parámetros |
Tipo de resultado |
Descripción |
---|---|---|---|
getProducerWildcards |
none |
String[] |
Cadenas comodín utilizadas por los productores actuales relacionadas con el agente |
getNumWildcardProducers |
Cadena comodín |
Integer |
Número de productores actuales relacionados con el agente que están utilizando la cadena comodín especificada |
Las siguientes claves de búsqueda se definen como constantes estáticas en la clase de utilidad com.sun.messaging.jms.management.server.ProducerInfo.
Tabla 1–19 Claves de búsqueda para la información del productor de mensajes
Nombre |
Tipo de valor |
Descripción |
---|---|---|
DestinationNames |
String[] |
Nombres de destinos que coinciden con comodines utilizados por los productores de comodines Sólo para destinos de temas. |
Wildcard |
Boolean |
¿Productor de comodines? Sólo para destinos de temas. |
Información de resolución de problemas de 4.2 es compatible con el formato de nombre de usuario DN en la autenticación de conexión del cliente contra un almacén de usuario LDAP. La compatibilidad incluye la siguiente nueva propiedad de agente (y el valor):
imq.user_repository.ldap.usrformat=dn
Esta propiedad permite al agente autenticar un usuario de cliente al entrar en un almacén de usuario LDAP extrayendo del formato de nombre de usuario DN el valor del atributo especificado por la siguiente propiedad:
imq.user_repository.ldap.uidattr
El agente utiliza el valor del anterior atributo como nombre de usuario en las operaciones de control de acceso.
Por ejemplo, si imq.user_repository.ldap.uidattr=udi y un nombre de usuario de autenticación de cliente están en el formato udi=mquser,ou=People,dc=red,dc=sun,dc=com, se extraería âmquserâ para realizar el control de acceso.
La autenticación JAAS de Información de resolución de problemas de 4.2 es compatible con la autenticación mediante dirección IP, así como mediante nombre de usuario.
Esta sección contiene una lista de los problemas conocidos de Información de resolución de problemas de 4.2. Se describen las siguientes áreas:
Para encontrar una lista de los fallos actuales, sus estados y sus soluciones alternativas, invitamos a los miembros de Java Developer Connection™ a visitar la página Bug Parade del sitio web Java Developer Connection. Compruebe la página antes de informar de un nuevo error. A pesar de que no se muestran todos los problemas de Información de resolución de problemas de la página es un buen punto de partida para ver si un problema ha sido comunicado.
http://bugs.sun.com/bugdatabase/index.jsp
Aunque la suscripción a Java Developer Connection es gratuita, es necesario registrarse. Encontrará información sobre cómo ser miembro de Java Developer Connection en la página web "For Developers" de Sun.
Para informar de un nuevo problema o enviar una petición de sobre nuevas funcionalidades, envíe un mensaje a imq-feedback@sun.com .
Esta sección describe los problemas relacionados con la instalación de la versión 4.2.
Message Queue 4.2, al igual que Message Queue 4.1, se instala a través de un instalador relativamente nuevo, que a su vez instala y actualiza los componentes compartidos de Java Enterprise System (Java ES) que requiere Message Queue; como por ejemplo, JDK, NSS, JavaHelp, etc.
El nuevo instalador de Message Queue y el antiguo instalador de Java ES, que se utilizaba para instalar versiones anteriores de Message Queue, no comparten el mismo registro del producto. Si una versión de Message Queue que se instaló con el instalador de Java ES se elimina y se actualiza a Message Queue 4.2 con el instalador de Message Queue, es posible que el registro del producto de Java ES se encuentre en un estado inconsistente. Esto significa que, al ejecutar el desinstalador de Java ES, es posible que se elimine sin querer Message Queue 4.2 y los componentes compartidos de los que depende, incluso si no se instalaron.
La mejor manera de actualizar el software Message Queue que instaló el instalador de Java ES es la siguiente.
Desinstale Message Queue y sus componentes compartidos con el desinstalador de Java ES.
Vuelva a instalar Message Queue 4.2. con el instalador de Message Queue.
Al instalar Message Queue en Windows, tenga presente las siguientes limitaciones:
El instalador no añade entradas de Message Queue en el menú Inicio>Programas. (Fallo 6567258)
Workaround: Para iniciar la consola de administración, utilice la línea de comando tal y como se indica en Starting the Administration Console de Sun Java System Message Queue 4.2 Administration Guide.
El instalador no añade el directorio IMQ_HOME\mq\bin al entorno variable PATH.(Fallo 6567197)
Workaround: Los usuarios deben añadir esta entrada a su variable de entorno PATH o proporcionar un nombre de ruta completa al invocar las utilidades de Message Queue (IMQ_HOME\mq\bin\ command).
El instalador no agrega entradas al registro de Windows para indicar que Message Queue está instalado. (Bug 6586389)
Cuando ejecute el modo silencio con un archivo de respuesta, el instalador volverá inmediatamente. La instalación se lleva a cabo, pero el usuario no tiene forma de saber cuándo se ha completado la instalación silenciosa. (Fallo 6586560)
Si intenta ejecutar el instalador en modo texto (installer –t ) en Windows, aparecerá un mensaje de error en inglés, incluso si el instalador se ejecuta en otro idioma. No se admite el modo texto en Windows. (Fallo 6594142)
De manera predeterminada, el instalador no instala Message Queue en la misma unidad en la que está instalado el sistema operativo. (Bug 6673511)
Para instalar y desinstalar en Windows, no existen archivos .bat que el usuario pueda ejecutar ni instalar mediante la función Agregar o Quitar programas del panel de control de Windows. (Bug 6673417)
En Windows Vista, no puede instalar Message Queue bajo C:\Archivos de programa a no ser que realice la instalación desde un Indicador de comandos como Administrador. (Bug 6701661)
Workaround: Para realizar la instalación desde un indicador de comandos como Administrador:
1. Inicio->Programas->Accesorios->Indicador de comandos.
2. Haga clic con el botón derecho del ratón en Indicador de comandos.
3. Seleccione Ejecutar como administrador.
4. Cambie el directorio a la imagen de instalación de Message Queue 4.2.
5. Ejecute installer.vbs.
Cuando el desinstalador se ejecute en modo de ejecución seca (uninstaller -n), realizará una desinstalación de forma incorrecta. (Bug 6719051)
Workaround: Realice una instalación silenciosa utilizando el siguiente comando:
uninstaller -s
La cadena âInicio de instalaciónâ de la página inicial del instalador no se ha localizado. (Bug 6592491)
Si el instalador se ejecuta en modo de ejecución seca (installer –n ), la pantalla de resumen muestra algunos mensajes de error y el estado de instalación como "incompleto": Esto es incorrecto y confunde al usuario; una ejecución seca no instala nada en el sistema, sino que crea sólo un archivo de respuesta que puede utilizarse después para realizar la instalación silenciosa. (Fallo 6594351)
El instalador no realizará el registro en Sun Connection cuando se ejecute en modo silencioso con un archivo de respuesta (installer -a filename -s). (Fallo 6710268)
Cuando ejecute el instalador en modo texto, al introducir el nombre de usuario o la contraseña para el registro en Sun Connect o para crear una cuenta en línea, no podrá corregir el nombre de usuario o la contraseña utilizando la tecla de retroceso. (Bug 6673460)
Solución provisional: Utilice las teclas Control-H en lugar de la tecla de retroceso, o utilice un emulador de terminal diferente, como por ejemplo dtterm o xterm.
La pantalla de actualización del instalador no siempre informa de manera correcta de la versión de Información de resolución de problemas de instalada actualmente o del motor del instalador. (Fallo 6679765)
Al utilizar el instalador en modo texto e intentar el realizar el registro en Sun Connection con un nombre de usuario o contraseña no válidos, el instalador mostrará el cuadro de diálogo âno se ha podido realizar el registroâ, lanzará una excepción de puntero nulo y se cerrará. (Fallo 6666365)
Estos son los problemas que se producen al hacer la instalación en la plataforma Linux
En el panel de selección de JDK, la lista desplazable sólo muestra un elemento. Esto dificulta la selección de otro JDK de la lista. (Fallo 6584735)
Si el JDK es actual y el usuario selecciona "Instalar JDK predeterminado" en la pantalla de selección de JDK, el instalador seguirá intentando instalarlo e informará de que no puede instalar el paquete. La instalación se realiza correctamente a pesar de este problema. (Fallo 6581310)
Si el JDK instalado actualmente es una versión anterior a JDK 1.5.0_15 (la versión que normalmente instala el instalador de Información de resolución de problemas de), el desinstalador de Información de resolución de problemas de no podrá encontrar el directorio predeterminado IMQ_JAVAHOME y se producirá un error. (Fallo 6673415)
Solución: Instale el JDK 1.5 manualmente de la siguiente manera antes de ejecutar el desinstalador de Información de resolución de problemas de.
# cd installImage/Product/UNIX/LINUX/X86/2.4/Packages
# rpm -i --force jdk-1.5.0_15–linux- arch.rpm
cuando arch es i586 o amd64.
Si el instalador se ejecuta en modo de ejecución seca (installer –n), la pantalla de resumen muestra algunos mensajes de error y el estado de instalación como âincompletoâ. Esto es incorrecto y confunde al usuario; una ejecución seca no instala nada en el sistema, sino que crea sólo un archivo de respuesta que puede utilizarse después para realizar la instalación silenciosa. (Fallo 6594351)
Los siguientes problemas afectan a la instalación en todas las plataformas:
La pantalla Listo para la instalación mostrará el nombre del producto como âmqâ, en lugar de como Sun Java System Message Queuye 4.2. (Fallo 6650841)
Cuando el instalador está en proceso de instalar Message Queue 4.2 y aparece la pantalla de progreso, el botón Cancelar está activo. Si en ese momento se pulsara el botón Cancelar, la instalación quedaría incompleta o interrumpida. (Fallo 6595578)
La pantalla resumen del instalador contiene una serie de vínculos que, al pulsar sobre ellos, activan un registro o un visor de página resumen. Al cerrar la ventana de este visor con el botón X de la ventana en lugar de con el botón marcado con la etiqueta "cerrar", ya no podrá volver a abrir la ventana del visor. (Fallo 6587138)
Solución: Cierre la ventana con el botón Cerrar.
Cuando un sistema de computación tiene versiones anteriores de Message Queue y NSS/NSPR, la pantalla de actualización del instalador sólo enumera los Message Queue que necesitan actualizarse; pero no indica si NSS y NSPR también lo necesitan. No obstante, todo el software relevante se actualizará (tal y como indica la pantalla Listo para la instalación, que muestra la información correcta). (Fallo 6580696)
La pantalla Lista de JDK de la selección de JDK está activa incluso cuando no se ha seleccionado la opción âSeleccionar un JDKâ. (Bug 6650874)
El instalador muestra la información de la versión de Información de resolución de problemas de de una manera poco clara. (Fallo 6586507)
En la plataforma Solaris, consulte la siguiente tabla para determinar la versión de Información de resolución de problemas de que aparece en el instalador.
Tabla 1–20 Traducción de la cadena de versiones
Versión que muestra el instalador en el SO Solaris |
Versión de Message Queue correspondiente |
---|---|
4.2.0.0 |
4.200 |
4.1.0.2 |
4.1 Patch 2 |
4.1.0.1 |
4.1 Patch 1 |
4.1.0.0 |
4.1 |
3.7.2.1 |
3.7 UR2 Patch 1 |
3.7.0.2 |
3.7 UR2 |
3.7.0.1 |
3.7 UR1 |
3.6.0.0 |
3.6 |
3.6.0.4 |
3.6 SP4 |
3.6.0.3 |
3.6 SP3 |
3.6.0.2 |
3.6 SP2 |
3.6.0.1 |
3.6 SP1 |
Para versiones con parche de 3.6 SP4 (por ejemplo, 3.6 SP4 Patch 1), la cadena de las versiones que muestra el instalador sigue siendo la misma. Debe ejecutar el comando imqbrokerd -version para determinar la versión exacta.
En la plataforma Linux, el número de versión que aparece en el instalador es de la siguiente forma.
majorReleaseNumber.minorReleaseNumber-someNumber
Por ejemplo, 3.7–22. Esto quiere decir únicamente que se trata de una de las versiones 3.7, pero no especifica cuál. Para determinar la versión de Información de resolución de problemas de instalada, ejecute el comando:
imqbrokerd -version.
Estos son los problemas relacionados con la localización.
Cuando el instalador se ejecuta en modo texto (installer –t ) en una configuración regional de lengua no inglesa, los caracteres de varios bytes aparecen como texto basura. (Fallo 6586923)
En la pantalla de progreso del instalador, la barra de progreso muestra caracteres extraños. La información sobre herramientas no es modificable en configuraciones regionales de lengua no inglesa. (Fallo 6591632)
El modo de texto (installer –t) no se admite en Windows. Al ejecutar el instalador en modo de texto en Windows, aparece un mensaje de error. Este mensaje se muestra en inglés aunque el instalador se haya ejecutado en configuraciones regionales de lengua no inglesa. (Fallo 6594142)
La pantalla de licencia del instalador muestra el texto de licencia en inglés, con independencia de la configuración regional en la que se haya ejecutado. (Fallo 6592399)
Solución: Para acceder a los archivos de licencia traducidos, busque el archivo LICENSE_MULTILANGUAGE.pdf.
El texto de ayuda sobre el uso del instalador no está traducido. (Fallo 6592493)
La cadena "Ninguno" que aparece en la página resumen del instalador no es modificable en inglés. (Fallo 6593089)
Cuando el instalador se ejecuta en una configuración regional alemana, la pantalla de Bienvenida no muestra el texto completo que se ve en otras configuraciones. (Fallo 6592666)
La cadena "Inicio de instalación" que se ve en la página del instalador del mismo nombre no está traducida. Aparece en inglés aunque el instalador se haya ejecutado en configuraciones regionales de lengua no inglesa. (Fallo 6592491)
Cuando el instalador se ejecuta en modo texto (installer –t ), aparecen las opciones de respuesta inglesas "Yes" y "No", aunque el instalador se haya ejecutado en otra configuración regional. (Error 6593230)
La información sobre herramientas del botón Examinar de la pantalla de selección de JDK del instalador no es modificable en inglés. (Fallo 6593085)
En versiones anteriores de Información de resolución de problemas de, podía utilizarse la opción —p o —password para especificar interactivamente una contraseña para los siguientes comandos: imqcmd, imqbrokerd y imdbmgr. Al comenzar con la versión 4.0., estas opciones se han desaprobado.
En lugar de ello, puede crear un archivo de contraseñas que especifique las contraseñas relevantes y hacer referencia al archivo de contraseñas utilizando la opción del comando -passfile, o simplemente introducir una contraseña cuando el comando se lo solicite.
Una nueva contraseña puede contener una o varias de las contraseñas enumeradas más abajo.
Una contraseña keystore utilizada para abrir el keystore de SSL. Utilice la propiedad imq.keystore.password para especificar la contraseña.
Una contraseña de depósito LDAP utilizada para conectar de forma segura con un directorio LDAP si la conexión no es anónima. Utilice la propiedad imq.user_repository.ldap.password para especificar esta contraseña.
Una contraseña de base de datos JDBC utilizada para conectarse con la base de datos compatible con JDBC. Utilice la propiedad imq.persist.jdbc.vendorName.password para especificar esta contraseña. Este componente de NombreDel Proveedor del nombre de la propiedad es una variable que especifica el proveedor de la base de datos. Las opciones son hadb, derby, pointbase, oracle o mysql.
Una contraseña del comando imqcmd (para realizar tareas administrativas del agente). Utilice la propiedad imq.imqcmd.password para especificar esta contraseña.
En el siguiente ejemplo, la contraseña de la base de datos JDBC se ha establecido en el archivo de contraseñas como abracadabra.
imq.persist.jdbc.mysql.password=abracadabra
Puede utilizar un archivo de contraseñas de cualquiera de las siguientes formas.
Configure el agente que va a utilizar el archivo de contraseñas estableciendo las siguientes propiedades en el archivo config.properties del agente.
imq.passfile.enabled=true |
imq.passfile.dirpath=passwordFileDirectory |
imq.passfile.name=passwordFileNam |
Utilice la opción -passfile del comando relevante, como por ejemplo:
imqbrokerd -passfile passwordFileName
Los siguientes problemas son generados por la administración y la configuración de Información de resolución de problemas de
En las plataformas Windows, el servidor de seguridad Windows integrado, que está activado de manera predeterminada, debe configurarse de forma manual con una regla de servidor de seguridad que permita al agente aceptar conexiones entrantes de clientes. (Fallo 6675595)
Haga doble clic en Servidor de seguridad Windows en el Panel de control
Deberá hacer clic en el cuadro de diálogo Continuar con el control de cuenta de usuario para que se abra el cuadro de diálogo Configuración de Firewall de Windows.
En el cuadro de diálogo Configuración de Firewall de Windows, haga clic en la ficha Excepciones.
Haga clic en Añadir programa.
En el cuadro de diálogo Añadir un programa, seleccione java.exe y haga clic en Examinar.
Windows identifica el proceso del agente como Java Platform SE binary. Por lo tanto, busque el archivo java.exe que ha utilizado el agente (normalmente en jdk1.5.0_15\jre\bin\java.exe).
Haga clic en Cambiar ámbito.
En el cuadro de diálogo Cambiar ámbito, seleccione âCualquier equipo (incluyendo los que estén conectados a Internet.”
Haga clic en Aceptar.
En el cuadro de diálogo Añadir un programa, haga clic en Aceptar.
En el cuadro de diálogo Configuración de Firewall de Windows, haga clic en Aceptar.
En las plataformas Windows, los comandos imqadmin y imqobjmgr lanzan un error cuando CLASSPATH contiene comillas dobles. (Fallo 5060769)
Solución: Abra una ventana de indicador de comandos y anule CLASSPATH:
set classpath=
A continuación, ejecute el comando que desee con la misma ventana de indicador de comandos, por ejemplo:
mqInstallHome\mq\bin\imqadmin
La opción -javahome en todos los scripts de Solaris y Windows no funciona si el valor proporcionado contiene un espacio. ( Fallo 4683029)
La opción javahome es utilizada por las órdenes y utilidades de Información de resolución de problemas de para especificar un entorno de tiempo de ejecución alternativo compatible con Java 2. Sin embargo, el nombre de la ruta del entorno de tiempo de ejecución de Java alternativo no debe contener espacios. A continuación le mostramos ejemplos de rutas que incluyen espacios.
Windows: C:/jdk 1.4
Solaris: /work/java 1.4
Solución: Instale el tiempo de ejecución Java en una ubicación o ruta que no contenga espacios en blanco.
El atributo imqQueueBrowserMaxMessagesPerRetrieve especifica el número máximo de mensajes que el tiempo de ejecución del cliente recupera a la vez cuando examina el contenido de una cola. El atributo influye en cómo se agrupan los mensajes en cola que se van a enviar al tiempo de ejecución de cliente, pero no afecta al número total de mensajes examinados. El atributo sólo afecta al mecanismo de navegación, no afecta a la entrega de los mensajes en cola. (Fallo 6387631)
Los problemas siguientes afectan al agente de Información de resolución de problemas de.
No se puede tener acceso al agente cuando un almacén de datos persistente abre demasiados destinos. (Fallo 4953354)
Solución: Esta situación se produce cuando el agente alcanza el límite de descriptor de archivos abiertos del sistema. En Solaris y Linux utilice la orden ulimit para incrementar el límite del descriptor de archivos.
Cuando se destruye un destino, los consumidores se quedan sin referencia. ( Fallo 5060787)
Los consumidores activos se quedan sin referencia cuando se destruye un destino. En ese caso, dejan de recibir mensajes (aunque se vuelva a crear el destino).
Cuando un cliente JMS que utiliza servicio de conexión HTTP finaliza de forma abrupta (por ejemplo por el uso de Ctrl-C), el agente tarda aproximadamente un minuto en liberar la conexión del cliente y todos los recursos asociados.
Si se inicia otra instancia del cliente dentro de este periodo de un minuto y si ésta intenta utilizar el mismo ClientID, suscripción duradera o cola, es posible que obtenga la excepción "ID de cliente ya en uso". No se trata de un problema real, es simplemente un efecto secundario del proceso de finalización descrito anteriormente. Si el cliente se inicia después de un retraso de aproximadamente un minuto, todo debería funcionar correctamente.
Al utilizar la base de datos MySQL para un almacén de datos, los mensajes almacenados de más de 1 MB lanzarán una excepción SQL âEl paquete de la consulta esdemasiado grandeâ. (Bug 6682815)
Solución: Inicie el servidor MySQL con la opción --max_allowed_packet establecida en un valor mayor que 1 MB, el tamaño predeterminado. Por ejemplo, utilice el siguiente valor:
--max_allowed_packet=60M
Cuando utilice la base de datos Java DB para un almacén de datos, al almacenar un mensaje lanzará la excepción SQL âno se ha podido obtener un bloqueo en el tiempo solicitadoâ. (Bug 6691394)
Solución: Añada el siguiente valor de propiedad al archivo config.properties del agente::
imq.persist.jdbc.derby.table.MYCONSTATE41.index.IDX2=CREATE INDEX &(index) ON $(name) (MESSAAGE_ID)
Al utilizar la base de datos MySQL para un almacén de datos compartido de alta disponibilidad, se necesita un mecanismo para configurar el motor de almacenamiento MySQL como NDBCLUSTER . (Bug 6691394)
Solución: Añada el siguiente valor de propiedad al archivo config.properties del agente::
imq.persist.jdbc.mysql.tableoption=EMGINE=NDBCLUSTER
Los siguientes problemas afectan a los clústeres de agente.
Sólo se admiten en esta versión los clústeres de agentes totalmente conectados. Esto significa que todos los agentes de un clúster deben establecer comunicación directamente con todos los demás agentes del clúster. Si se conecta a agentes en un clúster convencional mediante el argumento de orden imqbrokerd -cluster, asegúrese de que se incluyen todos los agentes del clúster.
Si un cliente se conecta a un agente en un clúster de agente de alta disponibilidad, el tiempo de ejecución de cliente intentará reconectar hasta que lo consiga (ignora el valor del atributo de fábrica de conexión imqAddressListIterations.)
Un cliente sólo podrá examinar los contenidos de las colas que estén ubicados en su agente local. El cliente puede continuar enviando mensajes a cualquier cola o consumiendo mensajes desde una cola de cualquier clúster; esta limitación sólo afecta a las funciones de exploración de colas.
En un clúster convencional que incluye agentes de la versión 4.2, todos los agentes deben ser de la versión 3.5 o posterior.
Los agentes de Información de resolución de problemas de 4.2 y 4.1 no pueden interoperar en un clúster de forma predeterminada con agentes Información de resolución de problemas de 3.7 o 3.6, dado que el valor predeterminado de imq.autocreate.queue.maxNumActiveConsumers se ha modificado entre estas versiones. (Fallo 6716400)
Solución alternativaCambie el valor de imq.autocreate.queue.maxNumActiveConsumers de los agentes de Información de resolución de problemas de 4.2 y 4.1 desde el valor predeterminado de -1 al valor predeterminado de la versión anterior de 1.
Cuando pase de un clúster convencional a un clúster de alta disponibilidad, puede utilizar la utilidad Administrador de bases de datos de Información de resolución de problemas de (imqdbmgr ) para pasar de un almacén de datos basado en JDBC independiente a un almacén de datos de alta disponibilidad compartido tal y como está documentado en Converting a Standalone Data Store to a Shared Data Store de Sun Java System Message Queue 4.2 Administration Guide
Un agente que utilice HADB no puede gestionar mensajes superiores a 10 MB. (Fallo 6531734)
La conversión a un almacén HADB con este comando imqdbmgr upgrade hastore puede fallar con el mensaje "hay demasiados bloqueos establecidos" si el almacén contiene más de 10.000 mensajes. (Fallo 6588856)
Solución alternativaUtilice el siguiente comando para aumentar el número de bloqueos.
hadbm set NumberOfLocks=<desiredNumber>
Para más información, consulte "Problemas de HADB" en la Guía de resolución de problemas de Sun Java System Application Server 9.1 Enterprise Edition.
Si se confirman más de 500 mensajes remotos en una transacción, el agente podría devolver el error "HADB-E-12815: Agotado el espacio de memoria de la tabla.â (Fallo 6550483)
Para más información, consulte "Problemas de HADB" en la Guía de resolución de problemas de Sun Java System Application Server 9.1 Enterprise Edition.
En un clúster de agente, el agente coloca mensajes en la cola para una conexión remota que no se ha iniciado (Fallo 4951010)
Solución: El consumidor recibirá los mensajes cuando se inicie la conexión. Los mensajes se enviarán a otro consumidro si se cierra la conexión del consumidor.
Al consumir más de un mensaje de un agente remoto de una transacción, es posible que se registre en el agente el siguiente mensaje de error. El mensaje es benigno y puede omitirse:
[26/Jul/2007:13:18:27 PDT] WARNING [B2117]: Error al reconocer el mensaje de mq://129.145.130.95:7677/?instName=a&brokerSessionUID=3209681167602264320: ackStatus = NOT_FOUND(404)\ Motivo = Actualización del estado de la transacción remota a CONFIRMADO(6): transacción 3534784765719091968 no encontrada, la transacción puede haber sido ya confirmada. AckType = MSG_CONSUMED MessageBrokerSession = 3209681167602264320 TransactionID = 3534784765719091968 SysMessageID = 8-129.145.130.95(95:fd:93:91:ec:a0)-33220-1185481094690 ConsumerUID = 3534784765719133952\par [26/Jul/2007:13:18:27 PDT] AVISO Notifi. conf. transacc. [8-129.145.130.95(95:fd:93:91:ec:a0)-33220-1185481094690, [consumer:3534784765719133952, type=NONE]] TUID=3534784765719091968 got response: com.sun.messaging.jmq.jmsserver.util.BrokerException: Actualizar estado de transacción remota a CONFIRMADO(6): transacción 3534784765719091968 no encontrada, la transacción puede haber sido ya confirmada: com.sun.messaging.jmq.jmsserver.util.BrokerException: Actualizar estado de transacción remota a CONFIRMADO(6): transacción 3534784765719091968 no encontrada, la transacción puede haber sido ya confirmada.r
El mensaje se registra al notificar la confirmación al agente de inicio del mensaje para posteriores mensajes de la transacción cuando la propiedad imq.txn.reapLimit es baja comparada con el número de mesajes remotos de una transacción. (Fallo 6585449)
Solución: Para evitar este mensaje, aumente el valor de la propiedad imq.txn.reapLimit.
En la plataforma Windows, el método getTransactionInfo de Transaction Manager Monitor MBean devuelve información de la transacción con un tiempo de creación de transacción incorrecto. (Fallo 6393359)
Solución: Utilice el método getTransactionInfoByID de Transaction Manager Monitor MBean en su lugar.
Es necesario que tenga en cuenta dos cuestiones relacionadas con la compatibilidad con SOAP
Al comenzar con esta edición de la versión 4.0 de Message Queue, la compatibilidad con los objetos administrados por SOAP era discontinua.
El desarrollo de SOAP depende de varios archivos: SUNWjaf, SUNWjmail, SUNWxsrt y SUNWjaxp. En la versión 4.1 de Message Queue, estos archivos sólo están disponibles si ejecuta Message Queue con JDK versión 1.6.0 ó superior.
Anteriormente el archivo .jar de implementación de SAAJ 1.2 directamente hacía referencia a mail.jar. En SAAJ 1.3 ya no existe esta referencia; por lo que los clientes de Message Queue deben poner mail.jar explícitamente en CLASSPATH .
Sun Java System Información de resolución de problemas de 4.2 contiene el siguiente conjunto de archivos que puede utilizar y distribuir libremente un formato binario:
fscontext.jar |
jms.jar |
imq.jar |
libmqcrt.so (HPUX) |
imqjmx.jar |
libmqcrt.so (UNIX) |
imqxm.jar |
mqcrt1.dll (Windows) |
jaas.jar |
|
Además, puede también redistribuir los archivos LICENSE y COPYRIGHT.
Para obtener funciones de accesibilidad que han aparecido desde la publicación de este software, consulte las evaluaciones de producto de la Sección 508 (se pueden pedir a Sun) para determinar qué versiones son las mejores para utilizar soluciones accesibles. Las versiones actualizadas de las aplicaciones se pueden encontrar en http://sun.com/software/javaenterprisesystem/get.html.
Para obtener información sobre el compromiso de Sun con la accesibilidad, visite http://sun.com/access.
Si experimenta problemas con Sun Java System Información de resolución de problemas de, póngase en contacto con el servicio de atención al cliente de Sun usando uno de estos procedimientos:
Servicios en línea de asistencia técnica de software de Sun en http://www.sun.com/service/sunone/software
Este sitio incluye vínculos con la base de datos de conocimiento, el centro de asistencia en línea (Online Support Center) y la herramienta ProductTracker, así como con programas de mantenimiento y números para contactar con el personal de asistencia técnica.
El número de teléfono del distribuidor asociado al contrato de mantenimiento.
Para poder ayudarle lo mejor posible a resolver problemas, tenga disponible la siguiente información cuando se ponga en contacto con el servicio de asistencia:
Descripción del problema, incluida la situación en la que éste se produce y la forma en que afecta al funcionamiento.
Tipo de equipo, versión del sistema operativo y versión del producto, incluida cualquier revisión del producto y otro software que pudiera influir en el problema.
Pasos detallados de los métodos que haya usado para reproducir el problema.
Cualquier registro de errores o volcados del núcleo.
Existe un foro de Sun Java System Información de resolución de problemas de en la ubicación siguiente:
http://swforum.sun.com/jive/forum.jspa?forumID=24
Apreciamos su participación.
Existe un foro de JMS en los foros de tecnología de Java que puede interesarle.
Sun tiene interés en mejorar la calidad de su documentación por lo que agradece sus comentarios y sugerencias.
Para compartir sus comentarios, vaya a http://docs.sun.com y haga clic en Enviar comentarios. En\~el formulario que aparece, especifique el título y el número de referencia del documento. El número de referencia es un número de siete o nueve dígitos que se encuentra en la portada del libro o en la parte superior del documento. Por ejemplo, el título de este libro es Notas de la versión de Sun Java System Message Queue 4.2, y el nombre de la pieza 820-3701.
Puede encontrar información útil de Sun Java System en las siguientes direcciones de Internet:
Documentación
Servicios profesionales
Servicio y productos de software de
Servicios de asistencia de software
Base de datos de soluciones y asistencia al cliente de
Servicios de asistencia y formación de Sun
Servicios profesionales y de consultoría de
Información para programadores
Servicios de asistencia para programadores de Sun
Formación sobre el software de