2010-12-08 4 views
0

In JSF2 habe ich mich gefragt, wie ich automatisch auf der Grundlage eines Wertes zu einer Seite navigieren könnte - automatisch, ohne auf eine Schaltfläche oder einen Befehl klicken zu müssen.JSF2 Wie navigiere ich automatisch, basierend auf einem Wert

Ich habe eine zusammengesetzte Komponente mit Parametern (zusammengesetzte: Attribut) und wenn diese zusammengesetzte Komponente gestartet wird, möchte ich Benutzer automatisch navigiert werden (ohne Benutzer muss eine Taste drücken oder klicken Sie auf eine Befehlsverknüpfung) zu einem bestimmten Seite, basierend auf einem der Composite: -Attribute. Wie könnte ich das tun?

Im Wesentlichen gibt es eine Möglichkeit, eine JSF .xhtml-Seite zu erhalten, um automatisch einen Aktionswert auszugeben - damit dieser Wert für die Navigation zu einer bestimmten Seite verwendet werden kann?

Meine Schnittstelle Composite Komponente sieht wie folgt aus: (I Dinge hier vereinfacht haben die Idee zu vermitteln)

<composite:interface> 
<composite:attribute name="showTable2" type="Boolean" 
    required="true" shortDescription="Show the second table?" /> 
</composite:interface> 

Und ich habe eine Navigationsregel wie diese, in denen der Benutzer auf eine Seite basiert auf Das Eingabe-Composite: Attribut. Die Sache ist, dass Benutzer zu einer der zwei Seiten in der Navigationsregel gebracht werden müssen, weil diese Seite diejenige ist, die der Benutzer zuerst sehen würde. Also keine Schaltfläche/commandLink zum Ausführen dieser Navigationsregel.

<navigation-rule> 
<from-view-id>/index.xhtml</from-view-id> 
<navigation-case> 
    <from-outcome>showTable2</from-outcome> 
    <to-view-id>/twoTables.xhtml</to-view-id> 
</navigation-case> 
<navigation-case> 
    <from-outcome>dontShowTable2</from-outcome> 
    <to-view-id>/oneTable.xhtml</to-view-id> 
</navigation-case> 

So ist der Eingang Composite: muss Attribut in ein Ergebnis Wert umgewandelt werden und ausgeführt werden, so dass meine Navigationsregel ausgeführt werden kann.

Vielen Dank!

+0

Dies ist möglicherweise mit Javascript möglich. Können Sie mir den Composite Code zeigen? – mvg

+0

Ich füge ein bisschen Code zu meiner Frage hinzu. Vielen Dank. – GeorgeJ

+0

Ich denke, das ist verwandt: http://stackoverflow.com/questions/4032825/how-to-make-a-redirection-in-jsf – BalusC

Antwort

Verwandte Themen