我正在尝试在渲染到UI之前评估验证消息。我试图做的所有这一切的原因是,如果我使用
@NotEmpty(message="{person.lastName.notNull}")
private String lastName;
在我的资源包中,密钥的值如下:
请输入姓氏#{account.profile.name.something}
当输入字段被验证时,消息显示为原样,即运行时表达式值未被解析。我试图填写以下阶段监听器的if
循环中的注释代码。
public Class EvaluateMessageListener implements PhaseListener {
public PhaseId getPhaseId() {
return PhaseId.RENDER_RESPONSE;
}
public void beforePhase(PhaseEvent event) {
FacesContext facesContext = FacesContext.getCurrentInstance();
List<FacesMessage> messageList = facesContext.getMessageList();
if (messageList != null) {
//loop through the messagelist,evaluate message and add message to FacesContext
}
}
public void afterPhase(PhaseEvent event) {
}
}
我怎样才能做到这一点?