Domanda

Sto sviluppando un sito con Seam e JBoss 3 7. Sto usando la sicurezza Seam e JSF. La prima pagina del sito ha i controlli di accesso. Quando l'utente immette le sue credenziali che viene reindirizzato alla sua pagina utente "/ MySC".

Ma se l'utente connesso a pochi tipi radice dominio "/" arriva alla prima pagina. Quello che voglio è che quando l'utente è connesso-in, non dovrebbe essere in grado di accedere nuovamente alla pagina. Qualora chieda per andare alla prima pagina o immettere la radice del dominio nella barra degli indirizzi, voglio che essere reindirizzato a "/ MySC". Come posso fare?

È stato utile?

Soluzione

È possibile utilizzare regola di navigazione SEAM che è abbastanza potente .. Si dichiara in page.xml ... È possibile dichiarare regola di navigazione condizionale lì ..

<page view id="/view.xhtml">
      <navigation from-action="#{user.login}">
           <rule if-outcome="successfull"><redirect view-id="/MySC.xhtml"/>
           <message severity="Info">
                Your login is successfull!.
           </message>
      </navigation>
</page>

Altri suggerimenti

Vi consiglio un piccolo restyling della struttura della pagina:. Rendere la pagina /start fronte la pagina che un utente autenticato è permesso di vedere, e redirect al /login se l'utente non è stato ancora confermato

Questo motivo è non solo detergente in termini di separazione degli interessi (consente di raggruppare la logica di autenticazione in una cartella distinta), risolve anche il problema di miscelazione principale del contesto e pagina di autenticazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top