繁体   English   中英

如何使用Primefaces在JSF页面中显示来自Java缓冲区的消息

[英]How to display messages from Java buffer in JSF pages using Primefaces

我设法用Primefaces创建捆绑。 我想创建Java缓冲区并以FIFO顺序存储消息。 当消息插入缓冲区时,我想将它显示在JSF页面中。 我如何使用Primefaces做到这一点?

我找到了Primefaces的例子:

<h:form id="dccd">

    <p:growl id="growl" showDetail="true" sticky="true" />

    <p:panel header="Growl">
        <h:panelGrid columns="2">
            <h:outputText value="Your Name: *" /> 
            <p:inputText value="#{bean.text}" required="true" label="Name"/>
        </h:panelGrid>

        <p:commandButton value="Save" actionListener="#{bean.save}" update="growl"/>
    </p:panel>

</h:form>

但这只有在我调用动作监听器时才有效。

您的示例仅在按下按钮时才起作用的原因是您正在更新growl元素。

您可以做两件事来确保不断收到新消息。

使用push时,服务器会在必要时将更新推送到客户端。 PrimeFaces有一些例子可以帮助你实现推动。 我不知道这是否适用于所有浏览器。

轮询

使用轮询,客户端会定期检查更新(可能会产生大量网络流量)。 PrimeFaces有一个poll元素,可以让事情变得更容易,看看这个例子 AFAIK它使用JavaScript,因此它应该适用于大多数现代浏览器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM