【发布时间】:2021-12-24 21:18:56
【问题描述】:
我正在与 Vaadin 一起开发一个项目,他必须对我创建的一些服务进行 API 调用。要进行 API 调用,请使用改造。我遇到的问题是,一旦我在 onResponse 函数覆盖中获得(异步)响应,我就无法再更改 UI,否则我会收到错误消息:“无法在不锁定会话的情况下访问 VaadinSession 或 UI 中的状态。”
【问题讨论】:
标签: java api retrofit retrofit2 vaadin
我正在与 Vaadin 一起开发一个项目,他必须对我创建的一些服务进行 API 调用。要进行 API 调用,请使用改造。我遇到的问题是,一旦我在 onResponse 函数覆盖中获得(异步)响应,我就无法再更改 UI,否则我会收到错误消息:“无法在不锁定会话的情况下访问 VaadinSession 或 UI 中的状态。”
【问题讨论】:
标签: java api retrofit retrofit2 vaadin
你必须在 access() 方法中更新 UI:
例如:
getUI().ifPresent(ui -> ui.access(() -> {
// update the components
}
另请阅读文档: https://vaadin.com/docs/v14/flow/advanced/tutorial-push-access
【讨论】: