struts2 第四次

来源:互联网 发布:数据迁移的重要性 编辑:程序博客网 时间:2024/06/02 02:52

我们都知道当写好转换器类后 还要将其注册在该web应用中,注册转换器在局部类型转换文件中指定,= 注册之后当浏览器发来请求时,就可以使用该转换器对请求参数进行转换了,这里注意 该转换器 只对该Action 属性起作用。比如多个Action都需要 对某个相同的属性转换那么 全局类型转换器 更加合适。
全局类型转换器
对类型起作用 而不是对指定Action的属性起作用。注册全局类型转换器应该提供一个xwork-conversion.properties 文件,该文件也是Properties文件。直接放在 WEB-INF/classes文件夹下,=
到目前为止 我们用的类型转换器 都是继承DefaultTypeConverter ,更简化的struts2提供了StrutsTypeConverter 类供我们实现自定义转化器。如下图这里写图片描述
类型转换 中的错误处理
当用户的不合法输入 ,会导致转换器 无法 正常转换。实际上 表现层数据涉及俩个处理:数据校验 和类型转换。只有当输入数据是有效的才可以进行有效转换。

这里写图片描述
Struts2框架在类型转换 错误后 会自动跳到input逻辑视图,这个得自己在struts.xml里面配置。出错后 会有如下类似 提示。
这里写图片描述
正如我上面画的请求流程所示,当转换出现错误时,会被在struts-default.xml配置的的拦截器ConversionError拦截 然后把出错信息放在Actiontext中。自定义转换类型 还可以自己不用定义转换器。不用写注册文件。不过如下形式
login.jsp
这里写图片描述
LoginAction.java
这里写图片描述
局部资源文件LoginAction.properties (改变 user属性出错后的提示信息)
全局资源文件 mess.properties(改变所有属性出错后的信息)
如下图
这里写图片描述

原创粉丝点击