2013-10-10 205 views
0

我對呈現的屬性有點問題。我想用它來登錄,如果有人第一次連接到我的網站,他可以登錄,但是當他登錄時,他看不到表單。但是當頁面加載時,我無法隱藏表格...PrimeFaces - 無法呈現

也許這會更容易與我的代碼。

HTML

   <h:panelGroup id="sidebar" layout="block"> 
       <h:panelGroup id="sbox1" layout="block"> 
        <h:panelGroup class="title" layout="block"> 
         <h2> Espace Membre </h2> 
        </h:panelGroup> 
        <ul class="style2"> 
          <h:form rendered="#{!membreCtrl.estConnecte}"> 
           Connection : <h:outputText value="#{membreCtrl.estConnecte}"></h:outputText> 
           Login : <h:inputText id="login" value="#{membreCtrl.login}" /> <br/> 
           Password : <h:inputSecret id="mdp" value="#{membreCtrl.mdp}" /> <br/> 
           <h:commandButton action="#{membreCtrl.identifier()}" value="Se connecter" /> 
          </h:form> 
        </ul> 
       </h:panelGroup> 

public String identifier() { 
    membreConnecte = membreEJB.connecter(login, mdp); 
    if (membreConnecte == null) { 
     return "FAILURE"; 
    } 
    estConnecte = true; 
    return "SUCCESS"; 
} 

如果我把正確的登錄/密碼,我得到的索引頁,但我想隱藏<h:form ..那我寫了。 但它不起作用。當我在Bean中打印結果時,我的布爾「estConnecte」是真實的,但是當我將它寫在HTML代碼上時不是。

回答

0

你點擊按鈕後更新了表單嗎?

將一個號碼:outputPanel形式裏面,如果你正在使用Primefaces,然後更新形式:

<h:form> 
    <p:outputPanel rendered="#{!membreCtrl.estConnecte}"> 
     Connection : <h:outputText value="#{membreCtrl.estConnecte}"></h:outputText> 
     Login : <h:inputText id="login" value="#{membreCtrl.login}" /> <br/> 
     Password : <h:inputSecret id="mdp" value="#{membreCtrl.mdp}" /> <br/> 
     <p:commandButton action="#{membreCtrl.identifier()}" value="Se connecter" update="@form"/> 
    <p:outputPanel/> 
</h:form>