Creación de paquetes de recursos de registros cronológicos y archivos de mensajes
Se pueden enviar mensajes escritos en registros cronológicos internos de WebSphere Application Server a otro proceso para su visualización. Los mensajes que aparecen en la consola administrativa, que puede ejecutar en una ubicación distinta a la del proceso del servidor, se pueden localizar utilizando el proceso de enlace a posteriori. Enlace a posteriori significa que WebSphere Application Server no localiza los mensajes cuando se registran, sino que aplaza la localización al proceso que muestra el mensaje.
Acerca de esta tarea
Todo método que acepta mensajes localiza dichos mensajes. El mecanismo de suministro de mensajes localizados es el soporte de paquete de recursos que proporciona IBM® Developer Kit, Java™ Technology Edition. Si no está familiarizado con los paquetes de recursos que implementa el Developer Kit, puede obtener más información de diferentes textos o consultando la documentación del API de las clases java.util.ResourceBundle, java.util.ListResourceBundle y java.util.PropertyResourceBundle, así como de la clase java.text.MessageFormat.
La clase PropertyResourceBundle es el mecanismo preferible.
Para localizar correctamente un mensaje, el proceso de visualización debe tener acceso al paquete de recursos donde esté almacenado el texto del mensaje. Hay que empaquetar el paquete de recursos aparte de la aplicación e instalarlo en una ubicación donde el proceso de visualización pueda acceder a él.
De forma predeterminada, el entorno de ejecución de WebSphere Application Server localiza todos los mensajes cuando se registran. Esta localización elimina la necesidad de pasar un archivo .jar a la aplicación, a menos que se necesite localizar en una ubicación diferente. No obstante, se puede utilizar la técnica de enlace anticipado para localizar mensajes según se anotan. Una aplicación que utiliza enlace anticipado tiene que localizar el mensaje antes de anotarlo. La aplicación busca el texto localizado en el paquete de recursos y da formato al mensaje. La técnica de enlace anticipado se usa para empaquetar los paquetes de recursos de aplicación con la aplicación.
Para crear un paquete de recursos, siga los pasos siguientes.
Procedimiento
Ejemplo
Un paquete de recursos se puede crear de varias maneras. La forma mejor y más rápida consiste en crear un archivo de propiedades que soporte un paquete de recursos de propiedades. Este ejemplo muestra cómo crear dicho archivo de propiedades.
En este ejemplo, se proporcionan cuatro mensajes traducibles. El archivo de propiedades se crea y se insertan los pares clave-valor. A este archivo se le aplican todos los convenios y reglas habituales que afectan a los archivos de propiedades. Asimismo, el creador debe conocer las restricciones que la clase Java MessageFormat impone a los valores. Por ejemplo, hay que escapar los apóstrofos para que no den problemas. Evite utilizar caracteres que no se puedan portar. WebSphere Application Server no soporta el uso de los convenios de formato ampliados que soporta la clase MessageFormat como, por ejemplo, {1, fecha} o {0,número, entero}.
Suponga que el directorio base de la aplicación que utiliza este paquete de recursos es baseDir y que este directorio estará en la ruta de clases. Suponga que el archivo de propiedades está almacenado en un subdirectorio de baseDir que no está en la ruta de clases (por ejemplo, baseDir/subDir1/subDir2/resources). Para que se pueda resolver el archivo de mensajes, se utiliza el nombre subDir1.subDir2.resources.DefaultMessage para identificar el paquete de recursos de propiedades y pasarlo al registrador de mensajes.
En este ejemplo, el archivo de propiedades tendrá el nombre DefaultMessages.properties.
# Contenido del archivo DefaultMessages.properties
MSG_KEY_00=Mensaje sin parámetros de sustitución.
MSG_KEY_01=Mensaje con un parámetro de sustitución: parm1={0}
MSG_KEY_02=Mensaje con dos parámetros de sustitución: parm1={0}, parm2 = {1}
MSG_KEY_03=Mensaje con tres parámetros de sustitución: parm1={0}, parm2 = {1},
parm3={2}
Una vez creado el archivo DefaultMessages.properties, se puede enviar el archivo a un centro de traducción donde se generarán las versiones localizadas.