我想在fileUpload组件的uploadListner中显示一条消息。但是它根本没有显示任何消息.Below是我正在使用的代码片段。
FacesContext context = FacesContext.getCurrentInstance();
FacesMessage msg = new FacesMessage(
FacesMessage.SEVERITY_ERROR,
"Please remove special charecters from the File Name. ",
"");
context.addMessage(null, msg);
我在p:commandButton中尝试了同样的事情,它正常工作。 这是代码段的XHTML部分。
答案 0 :(得分:1)
您需要在视图中声明<h:messages>
,<p:messages>
或<p:growl>
组件才能显示消息。鉴于您在null
中使用FacesContext#addMessage()
客户端ID,您可能打算显示全局消息,在这种情况下,您可以向上述消息组件添加globalOnly="true"
属性以过滤全局仅邮件。
此外,如果您要发送ajax请求,则还应该忘记通过在update
的{{1}}属性中指定消息组件的客户端ID来更新消息组件。 。
E.g。
<p:fileUpload>
或者,如果您使用的是PrimeFaces,也可以使用<p:fileUpload ... update="messages" />
...
<h:messages globalOnly="true" />
代替:
autoUpdate="true"