Name
要进行属性显示的 bean 的名称
property
要 显 示 的 属 性 的 名 称 。 如 果 这 个 属 性 类 有
java.beans.PropertyEditor,getAsText()或 toString 方法会被调用
Scope
Bean 的作用域,若没有设置,搜索范围是从页到应用程序作用域
Filter
如果设置 true,属性中的所有特殊 HTML 字符都将被转化为相应的实体
引用
Ignore
如果设置 false,当发现属性时会产生一个请求时间异常,否则返回 null
例如:
<bean:write name=”myBean” property=”myProperty” scope=”request”
lter=”true”/>
myBean 的属性 myProperty 将会被显示,作用域为请求,如果发现任何 HTML 特
殊字符都将被转化为相应的实体引用。
4.1.4 消息标记和国际化
strtus 框架支持国际化和本地化。用户在他们的计算机中定义自己所在的区域,当
web 应用程序需要输出一条消息时,它将引用一个资源文件,在这个文件中所有的消息都
使用了适当的语言。一个应用程序可能提供了很多资源文件,每个文件提供了用不同语言
编写的消息。如果没有找到所选语言的资源文件,就将使用默认的资源文件。
struts 框架对国际化的支持是使用<bean:message>标记,以及使用 java.util 数据
包 中 定 义 的 Locale 和 ResourceBundle 类 来 实 现 Java2 平 台 对 这 些 任 务 的 支 持 。
Java.text.MessageFormat 类定义的技术可以支持消息的格式。利用此功能,开发人员
不需了解这些类的细节就可进行国际化和设置消息的格式。
用 strtus 实现国际化和本地化:
第一步要定义资源文件的名称,这个文件会包含用默认语言编写的在程序中会出现的所有
消息。这些消息以“关键字-值”的形式存储,如下:
error.validation.location = The entered location is invalid
这 个 文 件 需 要 存 储 在 类 的 路 径 下 , 而 且 它 的 路 径 要 作 为 初 始 化 参 数 传 送 给
ActionServlet 作为参数进行传递时,路径的格式要符合完整 Java 类的标准命名规范。
比 如 , 如 果 资 源 文 件 存 储 在 WEB-INF\classes 目 录 中 , 文 件 名 是
ApplicationResources.properties , 那 么 需 要 传 递 的 参 数 值 是
ApplicationResources。如果文件在 WEB-INF\classes\com\test 中,那么参数值就
应该是 com.test. ApplicationResources.
为了实现国际化,所有的资源文件必须都存储在基本资源文件所在的目录中。基本资
源文件包含的是用默认地区语言 -本地语言编写的消息。如果基本资源文件的名称是
ApplicationResources.properties,那么用其他特定语言编写的资源文件的名称就应
该是 ApplicationResources_xx.properties(xx 为 ISO 编码,如英语是 en)。因此这些
文件应包含相同的关键字,但关键字的值是用特定语言编写的。
ActionServlet 的 区 域 初 始 化 参 数 必 须 与 一 个 true 值 一 起 传 送 , 这 样
ActionServlet 就会在用户会话中的 Action.LOCALE_KEY 关键字下存储一个特定用户
计算机的区域对象。现在可以运行一个国际化的 web 站点,它可以根据用户计算机上的设
置的区域自动以相应的语言显示。
我们还可以使用特定的字符串来替换部分消息,就象用 java.text.MessageFormat
的方法一样:
评论0
最新资源