Моя кнопка удаления удалит запись из базы данных, но не из фактического datatable в файлах. Пока вы не обновите его с помощью изменения фильтра или F5/нового сеанса.Удаление строки, не отраженной в datatable после обновления
Я рассмотрел различные ответы на этот вопрос и прихожу к вам. Я попытался возиться с обновлением и использовать oncomplete = «PF (« datalistWidget »). Filter()» среди прочего.
Использование перформансов 6.0 и стеклянной рыбы 4.1. Любая помощь оценивается. Я грубо следовал за учебником по адресу http://www.oracle.com/technetwork/articles/java/java-primefaces-2191907.html, а затем добавил по моей собственной настройке. Управляемые бобы и фасад и т. Д. Все они похожи на этот учебник с созданными базами данных. Я не видел никаких ошибок в журнале о стекле.
DataTable
<p:dataTable id="datalist" value="#{chemicalChemicalController.items}" var="item"
selectionMode="single" selection="#{chemicalChemicalController.selected}"
paginator="true"
editable ="true"
rowKey="#{item.chemKey}"
rows="10"
widgetVar="datalistWidget"
rowsPerPageTemplate="10,20,30,40,50"
filteredValue="#{chemicalChemicalController.itemsFiltered}"
>
Удалить Command Button
<p:commandButton id="deleteButton" icon="ui-icon-trash"
value="#{bundle.Delete}" actionListener="#{chemicalChemicalController.destroy}"
update=":growl, datalist" disabled="#{empty chemicalChemicalController.selected}"/>
Контроллер Delete Command
public void destroy() {
persist(PersistAction.DELETE, ResourceBundle.getBundle("/Bundle").getString("ChemicalChemicalDeleted"));
if (!JsfUtil.isValidationFailed()) {
selected = null; // Remove selection
items = null; // Invalidate list of items to trigger re-query.
}
}
Как и в случае с ответом, вы никуда не хотите удалять элемент из списка или указывать, что вы полностью загружаете список из db – Kukeltje