# [JSF] Menü mit CommandLinks



## Smoothi (11. Nov 2011)

Ich habe beispielsweise einen CommandLink


```
<h:commandLink value="Test" action="test" actionListener="#{testPM.reset()}"/>
```

Wenn ich diesen von der Seite "blubb.xhtml" aufrufe, dann werden alle Werte des umliegenden Formelements zunächst an die selbe Seite geschickt und erst danach erfolgt die Weiterleitung auf die Seite "test.xhtml". Sprich, im Eingabefeld des Browsers steht immernoch "blubb.xhtml", obwohl ich ja schon auf der "test.xhtml" bin.

Kann ich das umgehen? Also, dass die richtige Seite im Feld steht?

Wenn ich einen outputLink nehme gehts natürlich, aber da werden keine Formulardaten abgeschickt und ich kann keinen actionListener anhängen.

Versucht hatte ich bis jetzt:

```
<h:commandLink value="Test" action=""#{menuPM.goTo('test')}" actionListener="#{testPM.reset()}"/>
```


```
@Named("menuPM")
@SessionScoped
public class MenuPM implements Serializable {
    public void goTo(String site) {
        FacesContext fc = FacesContext.getCurrentInstance();
        fc.getApplication().getNavigationHandler().handleNavigation(fc, null, site + ".xhtml");
    }
}
```

aber das macht eigentlich genau das Gleiche


----------



## jwiesmann (11. Nov 2011)

Smoothi hat gesagt.:


> ```
> @Named("menuPM")
> @SessionScoped
> public class MenuPM implements Serializable {
> ...



Wie oben ergänzt:
*faces-redirect=true*
should do the trick!

Gruß


----------



## Smoothi (11. Nov 2011)

vielen Dank 

jetzt klappt es endlich so, wie es sollte


----------

