struts2 xml 验证出现 Invalid field value for field 的解决方法(转)
2010-09-21 10:36
627 查看
缺省情况下, 所有的装换错误使用通用的i18n信息 xwork.default.invalid.fieldvalue , 你可以在你的全局il8n资源包中替换他(缺省文本是"Invalid field value for field xxx", 这里xxx是字段名称).
局部修改:
无论如何, 有时你会希望能够在每个字段上替换这一信息. 你可以在action相关的资源文件(Action.properties)中添加一个i18n信息: invalid.fieldvalue.xxx, 这里xxx是字段名称.
需要知道的是, 这些错误不会直接报告出来. 他们被添加到ActionContext.conversionErrors中. 有几种方法可以访问该map从而可以报告这些错误.
示例:
<form action="add" method="post">
<s:fielderror></s:fielderror>
<input type="text" name="box">
<input type="text" name="width">
<s:submit value="添加"></s:submit>
</form>
如果age输入为不为数字时会提示
? Invalid field value for field "width".
其中Invalid field value for field "width" 信息是struts2通过内置的类型转换器进行类型转换时,如果不能成功转换, struts2框架自动生成一条错误信息,并将该错误信息放到addFieldError里面,这种默认的输出信息格式是在 xwork-2.1.2.jar中定义com/opensymphony/xwork2/xwork-messages.properties文件中有一条xwork.default.invalid.fieldvalue=Invalid field value for field "{0}".这是一种全局的错误提示方式,整个系统中只要是字段类型转换错误都会这样提示,我们也可以改变这种输出格式,只要在全局的国际资源文件中重写xwork.default.invalid.fieldvalue就可以了.实现方式:在struts.xml中加入<constant name="struts.custom.i18n.resources" value="messageResource"></constant>或者也可以在struts.properties中加入struts.custom.i18n.resources=messageResource
指定国际化资源文件名为messageResource. Properties
新建messageResource. Properties资源文件并添加数据xwork.default.invalid.fieldvalue={0} failure
修改之后字段类型转换错误提示为 : {0} failure所有的类型转换失败后,struts2会将基本类型设置为0,对象类型设置为null,这里的age的类型为Integer,当类型转换失败age值为null,如果age的类型为int,那么转换失败后值为0
这种提示信息不够友好,也可以定义局布的提示信息,为每一个Action新建一个properties文件,文件名为XXX.properties(Action名.properties)
实现方式:新建RegistAction.properties并添加
invalid.fieldvalue.width=width error
局部修改:
无论如何, 有时你会希望能够在每个字段上替换这一信息. 你可以在action相关的资源文件(Action.properties)中添加一个i18n信息: invalid.fieldvalue.xxx, 这里xxx是字段名称.
需要知道的是, 这些错误不会直接报告出来. 他们被添加到ActionContext.conversionErrors中. 有几种方法可以访问该map从而可以报告这些错误.
示例:
<form action="add" method="post">
<s:fielderror></s:fielderror>
<input type="text" name="box">
<input type="text" name="width">
<s:submit value="添加"></s:submit>
</form>
如果age输入为不为数字时会提示
? Invalid field value for field "width".
其中Invalid field value for field "width" 信息是struts2通过内置的类型转换器进行类型转换时,如果不能成功转换, struts2框架自动生成一条错误信息,并将该错误信息放到addFieldError里面,这种默认的输出信息格式是在 xwork-2.1.2.jar中定义com/opensymphony/xwork2/xwork-messages.properties文件中有一条xwork.default.invalid.fieldvalue=Invalid field value for field "{0}".这是一种全局的错误提示方式,整个系统中只要是字段类型转换错误都会这样提示,我们也可以改变这种输出格式,只要在全局的国际资源文件中重写xwork.default.invalid.fieldvalue就可以了.实现方式:在struts.xml中加入<constant name="struts.custom.i18n.resources" value="messageResource"></constant>或者也可以在struts.properties中加入struts.custom.i18n.resources=messageResource
指定国际化资源文件名为messageResource. Properties
新建messageResource. Properties资源文件并添加数据xwork.default.invalid.fieldvalue={0} failure
修改之后字段类型转换错误提示为 : {0} failure所有的类型转换失败后,struts2会将基本类型设置为0,对象类型设置为null,这里的age的类型为Integer,当类型转换失败age值为null,如果age的类型为int,那么转换失败后值为0
这种提示信息不够友好,也可以定义局布的提示信息,为每一个Action新建一个properties文件,文件名为XXX.properties(Action名.properties)
实现方式:新建RegistAction.properties并添加
invalid.fieldvalue.width=width error
相关文章推荐
- struts2 的xml验证出现Invalid field value for field的解决方法
- struts2 xml 验证出现 Invalid field value for field 的解决方法(转)
- [Struts2] No result defined for action ... and result input & Invalid field value for field ...
- struts2在struts.xml中为返回的页面配参数时出现Invalid result location value/parameter
- struts2整合json出现no result type defined for type 'json'的解决方法
- Python ValueError: invalid literal for int() with base 10 实用解决方法
- JSP 出现 “Cannot switch on a value of type String for source level below 1.7” 的解决方法
- Python ValueError: invalid literal for int() with base 10 实用解决方法
- struts2整合json出现no result type defined for type 'json'的解决方法
- 解决使用Struts2的s:textfield标签出现Unable to find setter method for attribute: style的问题
- struts2整合json出现no result type defined for type 'json'的解决方法
- 报错:this class is not key value coding-compliant for the key closeLotTextField解决方法
- 报错:this class is not key value coding-compliant for the key closeLotTextField解决方法
- struts2 搭建环境后出现 no action mapped for namespace 的解决方法
- struts2整合json出现no result type defined for type 'json'的解决方法
- The value for the useBean class attribute XXX is invalid.解决方法
- [Struts2] No result defined for action ... and result input & Invalid field value for field ...
- struts2整合json出现no result type defined for type 'json'的解决方法
- 报错:this class is not key value coding-compliant for the key closeLotTextField解决方法
- Struts2 莫名其妙的Invalid field value for field 的异常