vaadin - 如何更新 CrudPanel 中的项目

标签 vaadin crud updates

在 CrudPanel 中,我需要更新一些项目(不是通过 CRUD 对话框)。像这样的事情:

    @Transactional
    ...
 
      instance.setSomeAttribute(newValue);
      return savedInstance = instanceRepository.save(instance);

更新后在 dataProvider 上调用refreshAll会产生警告Got an RPC for non-existent node: xxxx。另外,我认为如果只更改一项,则刷新所有项目会有点贵。

调用特定的刷新项,在另一边,refreshItem(instance),给出类 [...MenuItem] 的对象,标识符为 [xxxx]:乐观锁定失败;嵌套异常是 org.hibernate.StaleObjectStateException:行已被另一个事务更新或删除(或未保存值映射不正确)

我还尝试将newInstance传递给refreshItem,结果相同。

有人可以指示如何进行吗?

最佳答案

检查equalshashCode,确保它们不包含在您调用refreshItem 时可能已更改的字段。

关于vaadin - 如何更新 CrudPanel 中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69251299/

相关文章:

eclipse - 如何将Vaadin 7.3.9集成到Eclipse中的Grails项目中?

php - 如果未实例化对象,调用静态函数将返回 NULL? PHP面向对象

java - SpringBoot CrudRepository中如何将原生查询从Service层传递到Repository层

c# - 想要使用 CRUD 操作在 asp.net c# 中创建 GridView 。请给我插入、更新、删除查询

c++ - 软件更新过程

spring-security - 升级到 springBootVersion = '1.3.3.RELEASE' 后使用 RestTemplate 出现异常

在 vaadin 项目中找不到 JavaScript 文件

java - 在 Vaadin Combobox 中引用数据?

javascript - Highcharts:数据实现时更新图表

javascript - 更新用户信息