Ajax 不显示验证和面消息

Ajax 不显示验证和面消息,ajax,validation,jsf,primefaces,Ajax,Validation,Jsf,Primefaces,我在ap:outputPanel <h:form id="someForm"> <p:panel id="panel" header="HEADER"> <h:panelGrid columns="5"> <h:outputLabel value="Name:" for="name" /> <p:inputText id="name" value="#{userBea

我在a
p:outputPanel

<h:form id="someForm">
    <p:panel id="panel" header="HEADER">
        <h:panelGrid columns="5">

            <h:outputLabel value="Name:" for="name" />

            <p:inputText id="name" value="#{userBean.name}" required="true"
                requiredMessage="ASD" label="name" maxlength="15">
                <f:validateLength minimum="10"></f:validateLength>
                <p:ajax event="blur" update="inputValidationMessage" />
            </p:inputText>

            <p:message id="inputValidationMessage" showDetail="true" for="name"
                display="icon" />
            <p:watermark for="name" value="e.g Jill" />

        </h:panelGrid>

        <p:commandButton value="Save" update="panel"
            actionListener="#{userBean.doSomething}">
        </p:commandButton>
    </p:panel>
</h:form>
没有显示FacesMessage

我在Weblogic 12.1上使用JSF2.0和Primefaces 3.0


感谢您的帮助。

您已将
声明如下:

<p:message ... display="icon" />

谢谢你,巴卢斯克。现在将显示验证消息。但是从
userBean.doSomething
返回的
FacesMessage
呢。还是没有表现出来?那是另一个问题。但是,那些带有
null
客户端ID的将只显示在
中,但我在您的代码中没有看到任何。但是,它们将被记录到服务器日志中,如
警告:FacesMessage已排队,但未显示。将来,请在单独的问题中提出单独的问题。那么如何指定非空的clientId?没有这样的属性吗?我给按钮分配了一个
id
,并为该id添加了另一条
p:message
,但运气不好。你想让我把这个问题带到另一个问题上来,还是你能快速更新一下你的答案您需要在
addMessage()
中指定客户端ID(如生成的HTML输出中所示),而不是组件ID(如您在XHTML源代码中指定的)。只需添加一个
。无论如何,这是显示全局消息的标准方式。
<p:message ... display="icon" />
<p:message ... />