2010-10-11 12 views
0

Si A.jsf un commandLink qui navigation B.jsf, alors je pense que quand je suis à page B.jsf, je vois http:domain/host/project/B.jsf comme l'URL. Cependant, je vois http:domain/host/project/A.jsf sur ma barre d'adresse. Je suis toujours UN derrière lors de l'affichage de l'URL dans le contrôle de la navigation. Y'a t'il un moyen d'arranger cela? Mon contrôle de navigation est gérer à l'intérieur faces-config.xml.JSF page Navigation: Si A.jsf naviguer vers B.jsf par des liens hypertextes, pourquoi l'URL à afficher A.jsf au lieu de B.jsf

Essayez ceci comme Plaudit Design - Web Design suggérer. Cependant, ne le répare pas.

<navigation-rule> 
    <from-view-id>/CentralFeed.xhtml</from-view-id> 
    <navigation-case> 
     <from-outcome>CREATE EVENT</from-outcome> 
     <to-view-id>/CreateEvent.xhtml</to-view-id> 
    </navigation-case> 
    <navigation-case> 
     <from-outcome>CREATE ARTICLE</from-outcome> 
     <to-view-id>/WriteArticle.xhtml</to-view-id> 
    </navigation-case> 
    <navigation-case> 
     <from-outcome>PROFILE</from-outcome> 
     <to-view-id>/Profile.xhtml</to-view-id> 
    </navigation-case> 
    <redirect/> 
</navigation-rule> 

Répondre

3

Vous devez ajouter ce qui suit dans votre navigation règle

<redirect/> 

Avec sur l'élément redirect la redirection est interne. La redirection entraîne une redirection externe de sorte que votre navigateur demande la nouvelle page.

+0

Ça ne marche pas pour moi. Je modifie mon post avec quelques codes, pouvez-vous jeter un coup d'oeil? –

+1

Il devrait aller à l'intérieur du boîtier de navigation. Notez que toute demande de beans portée sera recréée. En outre, si aucune action commerciale n'est impliquée, je suggère d'utiliser 'h: outputLink'. C'est aussi plus convivial pour le référencement. Ou si vous êtes déjà sur JSF 2.0, utilisez 'h: link' à la place. – BalusC

+0

Merci BalusC +1 –