1

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>

しかし、これは私がアクションリスナーを呼び出したときにのみ機能します。

4

1 に答える 1

3

あなたの例がボタンを押したときにのみ機能する理由は、うなる要素を更新しているためです。

新しいメッセージを受信し続けるためにできることは 2 つあります。

押す

プッシュを使用すると、サーバーは必要に応じて更新をクライアントにプッシュします。PrimeFaces には、プッシュを理解するのに役立ついくつかの例があります。ただし、これがすべてのブラウザで機能するかどうかはわかりません。

世論調査

ポーリングを使用すると、クライアントは定期的に更新をチェックします (大量のネットワーク トラフィックが生成される可能性があります)。PrimeFaces には、簡単にするために poll 要素があります。 exampleを見てください。私の知る限り、JavaScript を使用しているため、ほとんどの最新のブラウザーで動作するはずです。

于 2012-09-12T17:27:49.797 に答える