Vaadin 14:是否可以从后台线程 ui.access() 中调用 ui.navigate()

问题描述

我有一个 Vaadin 14 应用程序,它向用户显示处理指示器视图 (@Push ProcessingView),同时在后台线程中进行一些长时间(几秒钟)的处理。当后台线程完成时,我从 ui.access() 块中调用 ui.navigate() 到另一个视图 (CompleteView)。 ui对象传递给后台线程,线程中我没有使用UI.getCurrent()。

然而,随机且不可预测地,某些会话最终会进入刷新 ProcessingView 并生成无限线程的无限循环中。没有抛出异常,也没有报告错误,Javascript 控制台只是报告会话意外停止并执行刷新。

我怀疑 Vaadin 中的一个错误导致会话失败。

Vaadin 14 是否支持可以从 ui.access() 后台线程调用 ui.navigate() 或仅支持更新屏幕上的组件?

还有其他想法为什么会发生这种情况吗?

感谢任何指针。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)