【发布时间】:2013-11-21 11:53:27
【问题描述】:
我正在尝试使用主要面孔的功能,该功能允许用户编辑表格本身中的单元格数据。我已按照此链接来实现它: Primefaces showcase
当我说编辑表格中的单元格时,输入的新值不会发送到 bean。它仍然只显示旧值。
我的代码 JSF:
<h:form id="testform">
<p:growl id="messages" showDetail="true" />
<p:outputPanel id="testContainer" deferred="true">
<p:remoteCommand name="oncompleteCellEdit" update="cars messages" />
<p:dataTable id="cars" var="car" value="#{articlesbean.LMatpilotaccess1}" editable="true" editMode="cell" widgetVar="carsTable" update=":cars">
<f:facet name="header">
Matériel du pilotage et accessoires
</f:facet>
<p:ajax event="cellEdit" listener="#{articlesbean.onCellEdit}" oncomplete="oncompleteCellEdit()" update=":testform:messages" />
<p:column headerText="Serie" style="width:25%">
<p:cellEditor >
<f:facet name="output"><h:outputText value="#{car.serie}" /></f:facet>
<f:facet name="input"><p:inputText id="modelInput16" value="#{car.serie}" style="width:96%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Cap" style="width:25%">
<p:cellEditor >
<f:facet name="output"><h:outputText value="#{car.cap}" /></f:facet>
<f:facet name="input"><p:inputText id="modelInput15" value="#{car.cap}" style="width:96%"/></f:facet>
</p:cellEditor>
</p:column>
</p:dataTable>
</p:outputPanel>
</h:form>
我的代码豆
@ManagedBean(name="articlesbean")
@ViewScoped
public class ArticlesBean implements Serializable{
@Inject
private ArticlesDAO articleDAO;
private Matpilotaccess1 matpilotaccess1;
public void onCellEdit(CellEditEvent event) {
Object oldValue = event.getOldValue();
Object newValue = event.getNewValue();
System.out.println("/////"+(event.getNewValue());
System.out.println("/////"+(event.getOldValue());
FacesContext context = FacesContext.getCurrentInstance();
Matpilotaccess1 mpltiacc = context.getApplication().evaluateExpressionGet(context, "#{mpltiacc}", Matpilotaccess1.class);
articleDAO.Updatetable(mpltiacc);
}
/////////Getters and Setters
}
由于
System.out.println("/////"+(event.getNewValue());
System.out.println("/////"+(event.getOldValue());
在这两种情况下我都得到了旧值!!!
谁能告诉我如何获得新值???我正在使用 Jboss 7 和 primefaces4 谢谢
【问题讨论】:
-
LMatpilotaccess1 是一个列表吗?我知道那是 2 年前的事了,但我偶然发现了这个问题。
标签: java jsf jsf-2 primefaces