我有以下代码,当单击命令按钮时,所选行不会保存在下一页中我想要的输出中。我试图使用来自primefaces的单选数据表。我使用jsf和primefaces相当新。这是我的问题的一般例子。
<h:form id="form">
<p:dataTable id="allCars" var="car" value="#{carBean.allCars}" rowKey="#{car.model}"
selection = "#{car.selectedCar}" selectionMode="single">
<p:column headerText="Car Model" style ="width:24%">
<h:outputText value="#{car.model}" />
</p:column>
<p:column headerText="Car Year" style ="width:24%">
<h:outputText value="#{car.year}" />
</p:column>
<f:facet name="footer">
<p:commandButton id="selectedButton" value="Save Selected Car" title="Save Car"
ajax="false" action="#{gotToNextPageWithSavedValue}" />
</f:facet>
</p:dataTable>
</h:form>
CarBean.java看起来像
@ManagedBean
@SessionScoped
public class Carbean{
private Car selectedCar;
private ArrayList<Car> allCars;
//getters and setters for both
}
我不确定我还需要在dataTable或命令按钮中添加什么,以便它可以获取所选行并将其传递给Bean中的selectedCar。