Primefaces 行未更新-对话框中的更新按钮(由dataTable中的按钮打开)
版本:PrimeFaces3.5、JPA2.1、GlassFish 4.0、JavaEE7、JSF2.0 对话框通常打开并显示编辑数据,但此对话框中的“更新”按钮不起作用。按钮代码如下:Primefaces 行未更新-对话框中的更新按钮(由dataTable中的按钮打开),primefaces,eclipselink,updates,jpa-2.1,Primefaces,Eclipselink,Updates,Jpa 2.1,版本:PrimeFaces3.5、JPA2.1、GlassFish 4.0、JavaEE7、JSF2.0 对话框通常打开并显示编辑数据,但此对话框中的“更新”按钮不起作用。按钮代码如下: <p:commandButton actionListener="#{funcionarioMB.save}" value="Alterar" oncompl
<p:commandButton actionListener="#{funcionarioMB.save}"
value="Alterar"
oncomplete="dlg.hide();"
update=":tblFuncionarios"
ajax="false" />
存储库中的方法edit():
public void edit(Funcionario funcionario) {
this.manager.merge(funcionario);
}
如果没有ajax=“false”,用于更新实体的按钮将无法工作。数据表在哪里 只需重新创建/重建数据表值 在managedbean/backingbean中,在执行CRUD操作后添加此方法
public List<T> refreshDatatable(){
list=yourEJBFacade().getList();
return list
}
公共列表刷新数据表(){
list=yourEJBFacade().getList();
返回列表
}
在会话bean中
public List<T> getList(){
Query q = entityManager.createQuery("select a from YourEntityClass a");
return q.getResultList();
}
public List getList(){
Query q=entityManager.createQuery(“从EntityClass a中选择a”);
返回q.getResultList();
}
更新数据表(update=“:tblFuncionarios”)
有关参考资料,请参阅
添加了
ActionEvent-ActionEvent
作为save
方法的参数,由于Erick R.Ribeiro在PrimeFaces Facebook组中的提示,它现在可以工作了。使用JDBC连接也不能工作。谢谢,但数据表正在正确刷新;已编辑的行未在数据库中更新。我已将其添加为ActionEvent作为“save”方法的参数。
public void edit(Funcionario funcionario) {
this.manager.merge(funcionario);
}
public List<T> refreshDatatable(){
list=yourEJBFacade().getList();
return list
}
public List<T> getList(){
Query q = entityManager.createQuery("select a from YourEntityClass a");
return q.getResultList();
}