2016-04-05 5 views
0

Ich habe eine p:datatable, bei Auswahl ich möchte zu verschiedenen Seite navigieren. Ich war in der Lage, es zu tun mit <p:ajax event="rowSelect" listener="#{users.onUserSelect(userInformation.id)}"/>primefaces datable navigation

public void onUserSelect(long id) { 
    System.out.println("user selected" + id); 
    try { 
     FacesContext.getCurrentInstance().getExternalContext().redirect("users/user.jsf?id=" + id); 
     FacesContext.getCurrentInstance().responseComplete(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

in der resultierenden Seite i von einigen Daten erhalten möge db diese ID verwenden und anzeigen. Also, vor allem ist dieser Ansatz in Ordnung? Wenn ja, wie/wo sollte ich diese ID in der resultierenden Seite mit Request Params bekommen? oder vielleicht gibt es andere Best Practice, um zu erreichen, was ich will?

+1

Ist das, was Sie suchen? http://StackOverflow.com/q/8459903 – BalusC

+0

@BalusC Danke, das war genau das, was ich gesucht habe – Asiat

Antwort

0

In Ergebnisseite:

<f:metadata> 
     <f:viewParam name="id" value="#{switchController.id}" /> 
     <f:viewAction action="#{switchController.loadData}"/> 
</f:metadata>