1、中URL的Action选择
除非请求的URL与Action的name属性完全相同,否则将按先后顺序来决定由哪个Action来处理用户请求。因此,我们应该将名为* 的Action配置在最后.
2、打印异常的标签:<s:property value="exception"/>,也可以是<s:property value="exception.message"/>
3、<s:fielderror/>可以输出类型转换错误信息
import
com.opensymphony.xwork2.ActionSupport;
public
class
TestStruts2Tag
extends
ActionSupport
{
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
return SUCCESS;
}
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
@Override
public void validate() {
// TODO Auto-generated method stub
this.addActionError("actionError!");
this.addActionMessage("actionMessage!");
this.addFieldError("field", "fieldError");
this.addFieldError("field2", "fieldError2");
}
}
// index.jsp部分代码
<
s:fielderror
/>
<
s:fielderror
>
<
s:param
>
field
</
s:param
>
<
s:param
>
field2
</
s:param
>
</
s:fielderror
>
除非请求的URL与Action的name属性完全相同,否则将按先后顺序来决定由哪个Action来处理用户请求。因此,我们应该将名为* 的Action配置在最后.
2、打印异常的标签:<s:property value="exception"/>,也可以是<s:property value="exception.message"/>
3、<s:fielderror/>可以输出类型转换错误信息
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/1fa987a29c6482f53d401256f96355eb.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/97e794c86028c5f5b5461ae5ef440a4c.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/ecedf933ec37d714bd4c2545da43add2.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/97e794c86028c5f5b5461ae5ef440a4c.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/d18c02628675d0a2c816449d98bda930.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/ecedf933ec37d714bd4c2545da43add2.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/8f1ba5b45633e9678d1db480c16cae3f.gif)
// index.jsp部分代码
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/4f1150b881333f12a311ae9ef34da474.gif)