2008-11-03 5 views
0

Je suis assez nouveau à JSF et les nombreuses technologies connexes là-bas. J'essaie de créer un site Web dont l'en-tête contient un logo, des liens de navigation et une boîte de connexion, de sorte que cet en-tête puisse facilement être inclus dans toutes les pages du site à moins que l'utilisateur ne se connecte, Dans ce cas, un en-tête différent apparaîtra. Quelque chose de similaire à livejournal.En-tête JSF avec composant de connexion?

J'ai examiné quelques solutions comme la création d'un composant JSF personnalisé pour gérer la connexion et la combinaison avec des fragments JSP et/ou Facelets. Mais après beaucoup de recherches sur Google, je n'ai pas vraiment trouvé quelqu'un qui a essayé de créer un composant de connexion personnalisé et les informations sur la création d'un en-tête comme celui-ci sont rares. Alors, est-ce vraiment la bonne façon de résoudre mon problème? Y a-t-il une meilleure solution?

Merci d'avance.

Répondre

1

J'utiliserais certainement Facelets car cela vous permettra essentiellement d'inclure le même en-tête sur chaque page.

En termes de composant de connexion personnalisé, cela dépend de la façon dont vous gérez votre connexion. Si vous utilisez JAAS ou Spring Security, vous devrez les intégrer (cela peut être fait).

Cependant, un en-tête de connexion ne doit pas être difficile. Par exemple, vous pouvez simplement faire quelque chose comme:

<h:form id="loginForm" rendered="#{! loginBean.loggedIn}"> 
    Username: <h:inputText id="username" value="#{loginBean.username}" /> 
    Password: <h:inputPassword id="password" value="#{loginBean.password}" /> 
    <h:commandButton value="Login" action="#{loginBean.login}" /> 
</h:form> 
<h:outputText rendered="#{loginBean.loggedIn}" value="You are logged in as #{loginBean.username}" /> 
+0

Merci pour l'aide. Cela fonctionne bien :) – spadequack