I seem to have run into a problem and I was wondering if anyone has some insight as to what is happening. For the application I'm in the process of building I wanted to create a splash type startup panel to display insightful information of hardware software checks the app is performing before allowing the user access. To do this I decided to use the overlaypanel. The status message is initialized to "Start Init..." in the "startup" bean.
Page:
Code: Select all
<h:body styleClass="LoginBody" onload="PF('splashPanel').show();">
...
<p:overlayPanel widgetVar="splashPanel" hideEffect="fade" dismissable="false" dynamic="true" styleClass="Centered" style="width: 800px; height: 400px;" rendered="#{not startup.ready}" showEvent="none">
<div class="Splash">
<div class="Version">
<h:outputText value="#{coreLabel['core.version']}" /><h:outputText value=" " /><h:outputText id="version" value="#{startup.currentVersion}" />
</div>
<fti-projectina:spinner />
<h:outputText id="statusMsg" value="#{startup.statusMessage}" styleClass="StatusMessage" />
<h:outputText value="#{coreLabel['core.copyright']}" styleClass="Copyright" />
</div>
<h:form>
<p:remoteCommand name="onload" action="#{startup.callInit()}" autoRun="true" update="statusMsg"/>
</h:form>
</p:overlayPanel>
Code: Select all
setStatusMessage("Initializing devices...");
RequestContext.getCurrentInstance().update("statusMsg");
If I move the
Code: Select all
<h:outputText id="statusMsg" value="#{startup.statusMessage}" styleClass="StatusMessage" />
I had read that the overlay panel is prerendered (cached). If this is true than what purpose does the "dynamic" attribute serve?
Thanks for your help.