我正在使用 ICEfaces 3.2。我为特定ace:textAreaEntry
字段定义了一个验证器方法。如果我的验证器中的验证代码失败,我将在上下文中添加一条面孔错误消息。我希望当这个错误消息被添加到上下文中时,我actionListener
不会被执行。但我注意到的是,即使在我的验证器向上下文中添加了 faces 错误消息之后,也会actionListener
执行。我认为因为验证失败,面孔不会执行actionlistener
.
XHTML 文本区域入口代码:
<ace:textAreaEntry
id="addrincountryofincorp"
value="#{strformbean.addrInCountryOfIncorp}"
required="true" styleClass="#{facesContext.validationFailed?'ui-state-error':''}"
label="Address in Country of Incorporation" cols="50" rows="5"
validator="#{strformbean.validateAddrLen}" />
验证器方法:
public void validateAddrLen(FacesContext fc,UIComponent uc, Object obj){
int len = 0;
Map compAttr = uc.getAttributes();
log.debug("inside validateAddrLen...");
log.debug("obj = "+obj);
if(obj != null && ! obj.equals("")){
len = obj.toString().length();
if(len > 200){
Utility.addValMesgToContext(compAttr.get("label").toString() + " cannot exceed 200 Characters");
return;
}
}
}