【问题标题】:Vaadin UI between sessions会话之间的 Vaadin UI
【发布时间】:2021-09-13 04:57:51
【问题描述】:

当我在 Vaadin Flow 中创建新会话(或尝试从其他计算机访问)时,我收到此错误:

不能将节点从一个状态树移动到另一个状态树

this link,我读到了一些关于UIgetUIId() 的信息。

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

【问题讨论】:

  • 您能否更详细地描述您通过创建新会话来实现的目标?您还应该分享一些代码。
  • 新会话是指如果我尝试在新选项卡中或从其他计算机访问它。

标签: user-interface tomcat vaadin vaadin-flow


【解决方案1】:

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

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

【讨论】:

  • 我可以从您的链接中了解到它是关于 Route 的。在我的应用程序中,我只有一条路线。空的路线。我必须有更多的路线(我不喜欢)还是我可以做其他事情?
【解决方案2】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多