首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

struts2 类型转换器and国际化and正题

2012-12-22 
struts2 类型转换器and国际化and主题在默认的拦截器栈中包含了名为conversionError的拦截器,如果出现了类

struts2 类型转换器and国际化and主题

在默认的拦截器栈中包含了名为conversionError的拦截器,

如果出现了类型转换错误,该拦截器负责封装fieldError,

?并转向到名为input的逻辑视图。

默认情况下, 错误的提示信息为: Invalid field value for field "age".

如需修改提示信息由如下两种方式:

???????? 1. 在全局资源文件中,提供如下内容xwork.default.invalid.fieldvalue=提示信息

???????? 2. Action作用域(*),包作用域以及全局资源文件中: invalid.fieldvalue.域的名字=提示信息

????????

?

编写自定义类型转换器有三种种方式:

???????? 1. 继承ognl.DefaultTypeConverter

?? ??????????? 参看: PointConverter1

???????? 2. 继承StrutsTypeConverter (*)

?? ??????????? 参看: PointConverter2

?? ? 3. ?? 1. 继承com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter

?? ??????????? 参看: PointConverter3

??

??

?

编写完自定义类型转换器后, 我们需要通过配置告诉Struts 2 有两种方式可完成注册:

??????? 1. 配置全局的类型转换器,在src下新建一个名为“xwork-conversion.properties”的配置文件,

???????????????? 并在文件中加入“待转换的类型的全名(包括包路径和类名)=转换器类的全名”对;

???????? 2. 应用于某个特定类的类型转换器,做法为在该类的包中添加一个格式为

???????? ?? “类名-conversion.properties”的配置文件,并在文件中加入

???????? ?? “待转换的属性的名字=转换器类的全名”对。

?

国际化

???????? 1 对提示的国际化

?????????????????? getTextkey

???????? 2 对页面做国际化

?????????????????? <s:text name="title"></s:text>

?????????????????? 可以通过<s:i18n name="mess1"> 指明页面使用哪个资源文件,这个文件不需要注册

?????????????????? <s:property value="%{getText('title')}"/> 可以访问全局资源文件的内容

??????????????????

???????? 全局的资源文件(需要注册)

???????? package级别? baseName: package

???????? Action级别?? baseName: Action同名

???????? Action -- > package? - > 全局的资源文件

????????

主题

???????? 1

???????? 2 创建自己的主题? src/? template? / 新建文件夹,该文件夹的名字就是新建主题的名字

热点排行