我正在尝试展示一个内置在primefaces向导的onFlowProcess
中的FacesMessage
。
public String onFlowProcess(FlowEvent event) {
if (event.getOldStep().equalsIgnoreCase("otherTab")){
if (!hasImage){
FacesUtils.addMessage(null, "Error", "image is required", FacesMessage.SEVERITY_ERROR);
return event.getOldStep();
}
}
return event.getNewStep();
}
消息应该发送给咆哮,但我相信通过调用getOldStep()
,消息会在此过程中丢失。
我的咆哮声明为:
<p:growl life="2500" showDetail="true" globalOnly="true"/>
并且该向导包含flowListener="#{bean.onFlowProcess}"
。
我试着用我的FacesMessage
FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
但这似乎只对页面重定向有效。
如果有人知道什么.Thx
发布于 2013-07-01 22:33:00
我通过从bean更新<p:growl>
解决了这个问题:
RequestContext.getCurrentInstance().update("form:growl");
https://stackoverflow.com/questions/17347845
复制相似问题