2012-04-19 13 views
0

最後にチェックされたデータベースのロールでデータテーブルの役割を設定したいとします。これをどのように実装できますか?別のデータテーブルのレコードのチェックボックスの選択に基づいてデータテーブルを作成する

public class Database implements Serializable { 
    private List<Role> roles; 
    private String name; 
    private boolean selected; 
    ... 
} 

public class Role implements Serializable { 
    private String name; 
    ... 
} 

data.xhtmlこの

... 
<p:dataTable id="databases" var="database" value="#{dataBean.databases}" > 
    <p:column> 
     <p:selectBooleanCheckbox value="#{database.selected}"> 
      <p:ajax update="roles, databases" immediate="true" /> 
     </p:selectBooleanCheckbox> 
    </p:column> 
    <p:column headerText="Databases"> 
     <h:outputText value="#{database.name}" /> 
    </p:column> 
</p:dataTable> 

<p:dataTable id="roles" var="role" value="#{dataBean.roles}" >     
    <p:column headerText="Roles"> 
     <h:outputText value="#{role.name}" /> 
    </p:column> 
</p:dataTable> 

答えて

1

data.xhtml

<p:dataTable id="databases" var="database" value="#{dataBean.databases}" > 

<p:selectBooleanCheckbox value="#{database.selected}"> 
    <f:ajax execute="@this" listener="#{dataBean.updateRoles}" /> 
    <f:attribute name="selRec" value="#{database}" /> 
</p:selectBooleanCheckbox> 

databeanは

... 

public void updateRoles(AjaxBehaviorEvent event) { 
    //database is theobject in the current row 
    Database database = (Database) event.getComponent().getAttributes().get("selRec");  
} 
... 
のように見えます
+0

どのレコードを選択したのかを確認するにはどうすればよいですか? – Seitaridis

+0

編集した私の答え – rags

+0

ありがとうございます。 – Seitaridis

関連する問題