浏览代码

Fixes #11369 (#11402)

Clear contents of iframe clone that is in a Window so that when it's reattached to DOM we don't get 404
tags/7.7.16
macprzepiora 5 年前
父节点
当前提交
55a0195b1c
共有 1 个文件被更改,包括 16 次插入0 次删除
  1. 16
    0
      client/src/main/java/com/vaadin/client/ui/window/WindowConnector.java

+ 16
- 0
client/src/main/java/com/vaadin/client/ui/window/WindowConnector.java 查看文件

@@ -339,6 +339,22 @@ public class WindowConnector extends AbstractSingleComponentContainerConnector
}
return newEl;
}
if ("iframe".equalsIgnoreCase(old.getTagName()) && old
.hasAttribute("src") && old.getAttribute("src")
.contains("APP/connector")) {
// an iframe reloads when reattached to the DOM, but
// unfortunately, when newEl is reattached, server-side
// resource (e.g. generated PDF) is already gone, so this will
// end up with 404, which might be undesirable.
// Instead of the resource that is not available anymore,
// let's just use empty iframe.
// See
// https://github.com/vaadin/framework/issues/11369
// for details of the issue this works around
Element newEl = old.cloneNode(false).cast();
newEl.setAttribute("src", "about:blank");
return newEl;
}
}
Node res = node.cloneNode(false);
if (node.hasChildNodes()) {

正在加载...
取消
保存