Vaadin UI 会话之间

Vaadin UI between sessions

当我在 Vaadin Flow 中创建新会话(或尝试从另一台计算机访问)时出现此错误:

Can't move a node from one state tree to another

this link 开始,我阅读了一些关于 UIgetUIId() 的内容。

但是,我不明白我应该如何更改我的应用程序以修复错误。

正如 Denis 在您链接的论坛 post 中提到的,范围错误听起来是最有可能的罪魁祸首。换句话说,您试图在两个不同的 UI 中使用完全相同的组件实例,而这两个 UI 应该有自己的实例。不能同时在两个地方使用同一个实例。

您可以在此处找到 Vaadin Spring 范围的文档:https://vaadin.com/docs/latest/flow/integrations/spring/scopes

导致此类错误的一个可能原因是,如果您将组件存储在 static 变量中。你不应该那样做 - 一个组件实例只能属于一个 UI。一个 UI 依次(实际上)意味着一个浏览器选项卡。