关闭 Window 并在 BrowserFrame 组件中显示资源会导致第二个请求

Closing a Window with resource displayed in a BrowserFrame component causes a second request

我有一个运行时生成的 pdf,它显示在 Window 的 BrowserFrame 中。 window 关闭后,再次请求资源(为什么?),这会导致服务器端出错,因为连接器已经取消注册。如何让 Window 不再请求资源?

您可以使用代码轻松重现重复的请求

Window window = new Window("", new BrowserFrame("", new StreamResource(() -> new ByteArrayInputStream(new byte[]{}), "hehe.pdf")));
UI.getCurrent().addWindow(window);

Java 8、Vaadin 7.7.11

在 Vaadin 的问题跟踪器中有一个带有解决方法的文档案例

https://github.com/vaadin/framework/issues/11369#issuecomment-449370057

升级到 Vaadin 7.7.16 应该有一个修复

https://github.com/vaadin/framework/pull/11402