私はPrimefaces 5.1
でプロジェクトを開発しています。PrimeFaces p:idleMonitor rendered = "false"は機能しません
私のプロジェクトでは、私のスタートボタンにp:idleMonitor rendered="true"
が動作しているので、p:idleMonitor
を使用しました。
停止ボタンでp:idleMonitor rendered="false"
が機能していないと表示され、p:idleMonitor
がまだ処理中です。
サンプルコード:
いるindex.xhtml
<p:panel id="mainPanelId">
<p:commandButton value="Start" update="mainPanelId" action="{Sample.start}"/>
<p:commandButton value="Stop" update="mainPanelId" action="#{Sample.stop}"/>
<p:idleMonitor timeout="5000" rendered="#{Sample.idleRendered}">
<p:ajax event="idle" oncomplete="PF('dialogId').show();"/>
<p:ajax event="active" oncomplete="PF('dialogId').hide();"/>
</p:idleMonitor>
<p:dialog id="dialogId" widgetVar="dialogId" header="Idle">
<p:outputLabel value="Idle Mode Actived!"/>
</p:dialog>
</p:panel>
Sample.java
class Sample
{
private boolean idleRendered;
public String start()
{
idleRendered = true;
return null;
}
public String stop()
{
idleRendered = false;
return null;
}
}
はPF 6.0しようとしたかさえ6.1RC2?もう1つの回避策は、idleMonitorでwidgetVarを使用し、その上で 'pause()'関数を呼び出すことです。 – Kukeltje