次のPrimefaces3.1p:datatableから複数のパラメーターを渡すことを検討しています。
<p:dataTable value="#{tableBean.carsModel}" var="var" rowkey="#{var.model}"
selection="#{tableBean.car}" selectionMode="single">
<p:ajax event="rowSelect" listener="#{tableBean.onRowClick}"></p:ajax>
<p:column>
<f:facet name="header">
<h:outputText styleClass="outputText" value="Model"></h:outputText>
</f:facet>
<h:outputText styleClass="outputText" value="#{var.model}"></h:outputText>
</p:column>
<p:column>
<f:facet name="header">
<h:outputText styleClass="outputText" value="Color"></h:outputText>
</f:facet>
<h:outputText styleClass="outputText" value="#{var.randomColor}"></h:outputText>
</p:column>
</p:dataTable>
主キーとして複数のキーを使用している状況があります rowkey="#{var.model}
が、複数の主キーを操作する方法を使用しています。
私もCarDataModel extends ListDataModel<Car> implements SelectableDataModel<Car>{
クラスを使っています。誰かが私にどのように働くか教えてもらえますか?
@Override
public Car getRowData(String rowKey) {
//In a real app, a more efficient way like a query by rowKey
//should be implemented to deal with huge data
List<Car> cars = (List<Car>) getWrappedData();
for(Car car : cars) {
if(car.getModel().equals(rowKey))
return car;
}
return null;
}
@Override
public Object getRowKey(Car car) {
return car.getModel();
}
どんな助けでも大歓迎です。