struts2在struts1基础有很大改进,其Action不要求继承任何类,但其提供了一个类作为继承ActionSupport,其中封装了actionErrors和fieldErrors,actionMessages,还有一些常量例如“INPUT”,“SUCCESS”等,很好用。继承了以后增加信息很简单addActionError(“message”),addFieldError("message"),addActionMessage("message").
其中actionErrors指在Acton中的错误信息,fieldErrors是指验证错误的信息,actionMessages是指正常信息。
在页面上输出时如下:
<%-- ActionError --%>
<s:if test="hasActionErrors()">
<s:iterator value="actionErrors" id="error">
<s:property value="error"/>
</s:iterator>
</s:if>
<%-- FieldError ---%>
<s:if test="hasFieldErrors()">
<s:iterator value="fieldErrors" id="error">
<s:property value="error"/>
</s:iterator>
</s:if>
js 验证
<script type="text/javascript">
<!--
var sStr = "";
<s:if test="hasActionErrors()">
<s:iterator value="actionErrors">
sStr = sStr + "<s:property/>\r\n";
</s:iterator>
</s:if>
<s:if test="hasFieldErrors()">
<s:iterator value="fieldErrors">
sStr = sStr + "<s:property value="value[0]"/>\r\n";
</s:iterator>
</s:if>
if (sStr != "")
{
alert(sStr);
}
//-->
</script>