创建日志资源束和消息文件
您可将写到内部 WebSphere® Application Server 日志的消息转发到其他进程以进行显示。对于在与服务器进程不同的位置上运行的管理控制台上显示的消息,可使用迟绑定进程来本地化。迟绑定意味着当记录消息时,WebSphere Application Server 不对它们进行本地化,而是将本地化延迟到显示消息的进程。
关于此任务
每个接受消息的方法都本地化那些消息。用于提供本地化消息的机制是 IBM® Developer Kit, Java™ Technology Edition 提供的资源束支持。如果您不熟悉由开发者工具箱实现的资源束,您可从各种文本获取更多信息,或通过读 java.util.ResourceBundle、java.util.ListResourceBundle 和 java.util.PropertyResourceBundle 类以及 java.text.MessageFormat 类的 API 文档来获取。
PropertyResourceBundle 类是要使用的首选机制。
要正确地本地化消息,显示进程必须具有对存储消息文本的资源束的访问权。您必须将资源束与应用程序分开来封装,并将它安装在查看进程可访问它的位置。
缺省情况下,WebSphere Application Server 运行时将在所有消息记录后对它们进行本地化。此本地化移除将 .jar 文件传递到应用程序中的需要,除非您需要在另一个位置本地化。但是,可以使用先前的绑定技术在记录消息时对它们进行本地化。使用先前绑定的应用程序必须在记录消息之前对它进行本地化。应用程序在资源束中查找本地化的文本并对消息进行格式化。使用先前的绑定技术将应用程序资源束与应用程序打包在一起。
要创建资源束,执行以下步骤:
过程
示例
可以用几种方法来创建资源束。最好最简便的方法是创建支持属性资源束的属性文件。此示例显示如何创建这样的属性文件。
对于此样本,提供了四个可本地化的消息。创建了属性文件并且插入了键-值对。所有普通属性文件约定和规则都适用于此文件。此外,创建者必须知道 Java MessageFormat 类对各值强加的其他限制。例如,必须对撇号进行“转义”,否则它们将引起问题。避免使用不可移植的字符。WebSphere Application Server 不支持使用 MessageFormat 类支持的扩展格式化约定,如 {1, date} 或 {0,number, integer}。
假设使用此资源束的应用程序的基本目录是 baseDir,并且此目录在类路径中。假设属性文件存储在不在类路径中的 baseDir 的子目录中(例如,baseDir/subDir1/subDir2/resources)。为了能够解析消息文件,使用了 subDir1.subDir2.resources.DefaultMessage 名称来标识属性资源束并将它传递至消息记录器。
对于此样本,将属性文件命名为 DefaultMessages.properties。
# Contents of the DefaultMessages.properties file
MSG_KEY_00=A message with no substitution parameters.
MSG_KEY_01=A message with one substitution parameter: parm1={0}
MSG_KEY_02=A message with two substitution parameters: parm1={0}, parm2 = {1}
MSG_KEY_03=A message with three parameter: parm1={0}, parm2 = {1}, parm3={2}
当创建 DefaultMessages.properties 文件时,可将该文件发送至生成本地化版本的翻译中心。