Übergabe von Parametern an eine view-scoped-bean in JSF

Können sich vorstellen, ich habe zwei Seiten in meiner JSF 2 Anwendung: die erste Seite zeigt eine Tabelle der Objekte (Autos oder was auch immer) und die andere Seite ist in der Lage, um die details zu einem bestimmten Objekt.
Die Tabelle Seite im anforderungsbereich weil die Objekte neu geladen werden muss jedes mal, wenn der Benutzer es anfordert. Die detail Seite ist im Hinblick auf Umfang.
Also wenn ich auf ein Objekt in der Tabelle, so wird dieses Objekt angezeigt werden soll, in der details-Seite. Mit einer Umleitung bin ich in der Lage, gehen Sie zu der Seite mit den details, aber die Details-Seite ist leer, weil eine neue View erzeugt wurde.
Ok, ich könnte sich ändern, die Rahmen der Sitzung, dies würde aber zu anderen Problemen führen, daher würde ich gerne die Seite "details" im view-scope. Gibt es eine Möglichkeit, die übergabe eines Arguments an eine neu generted view-scope-bean?

UPDATE 1

Hier ist das code-snippet mit den ersten versuchen der Verwendung von view-Parameter. Wie kommentierte dies nicht funktioniert. Der Wert übergeben bekommt als request-parameter, sondern in der Ziel-Seite den Wert null hat.

Tabelle Seite:

<h:button value="Go to details" outcome="targetPage">
     <f:param name="carId" value="This is a test" />
</h:button>

Details Seite:

<f:metadata>
    <f:viewParam name="carId" value="#{bean.id}" />
    <f:event type="preRenderView" listener="#{bean.loadData}"/>
</f:metadata>

Bean-details Seite:

private String id;

public String getId() {
    return id;
}

public void setId( String id ) {
    this.id = id;
}

public void loadData() {
    System.out.println( "Id: " + id );
}

UPDATE 2

Habe ich gefunden, mein Fehler. Die Metadaten Teil war innerhalb einer Vorlage-Datei. Wenn ich den tag auf der main-Datei für die Detail-Seite funktioniert es. Ich danke Ihnen sehr.

besuchen Sie [link][1] hier finden Sie die vollständige Erklärung. [1]: stackoverflow.com/questions/4888942/...

InformationsquelleAutor Metalhead89 | 2014-01-02

Schreibe einen Kommentar