【发布时间】:2013-01-20 07:37:38
【问题描述】:
我正在使用 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;
}
}
}
【问题讨论】:
标签: validation jsf-2 icefaces-3