6 addActionError与addFieldError
前面的第5讲中用到了addFieldError,? 所以这里就做一个专题 来讲讲这方面的事儿.
?
?
addActionError() 与addFieldError ()有什么不同, 这里说一说,
这两个都是com.opensymphony.xwork2.ActionSupport类下的方法.
?
----------------------------------------------
?
addActionError (String ?anErrorMessage)
添加一个Action级别的错误消息到Action
anErrorMessage: 错误消息
显示消息的标签是:<s:actionerror />? ,显示全部的 Action级别的错误消息,可以加CSS
?
?
anErrorMessage被存放在List中 . 可以去看源码
----------------------------------------------
addFieldError (String ?fieldName, String ?errorMessage)
给一个字段(属性) 添加错误消息
fieldName: 字段(属性)名
errorMessage: 错误消息
?
errorMessage被存放在一个Map中. 可以去看源码
?
显示消息的标签是:
<!-- 例子 1 -->
<s:fielderror />?? 显示全部的 错误消息(用addFieldError方法添加的 )
?
<!-- 例子 2 -->
<s:fielderror theme="" fieldName="fuwuId"/>
?
<!-- 例子?3 -->
<s:fielderror>
<s:param>field1 </s:param> 显示指定的 field1字段的 错误消息
<s:param>field2 </s:param> 显示指定的 field2字段的 错误消息
</s:fielderror>
<s:form .... > .... </s:form>
?
------------------------------
?
默认主题下, <s:form />能显示错误信息,能自动添加表格排版,
?
修改主题:<s:form theme="simple"> 不能显示错误信息,不能自动添加表格排版,我们才好自己发挥啊.
?
?
?
-----------------------------------------------
ActionSupport类还有一个 public boolean hasErrors () 方法,? 其实他内部实现是这样的:
?
(hasActionErrors() || hasFieldErrors())? , 分别检查有无Action级别的错误信息, 有无Fidld级别的错误的信息.
?
只要一个为真, 就跳回input 实图, 并显示错误信息(如果你写了相应的标签)