Vaadin 会话立即过期

Vaadin session expired immediately

我有一个从原型创建的简单 vaadin 应用程序。带有按钮的页面已加载,但当您单击它时,会话已过期。在条件出现此问题:

服务器是 WildFly 10.1。0.Final

其他浏览器(EDGE、Firefox、Chrome)工作正常。在 Aniversary 更新之前,IE 11 也能正常工作。

我知道信息不够,但我不知道什么是重要的。你能告诉我我应该检查什么/我应该做什么吗?

我在日志和通信方面没有发现任何奇怪的地方。我猜会话会有问题,但我找不到问题所在 :-(

问题是由内部生成的网站图标请求引起的。此请求由 IE 内部生成并使用了错误的会话 ID (jsessionID)。服务器创建一个新会话并使用其 ID 进行应答。不幸的是,IE 然后将这个新的会话 ID 用于其他请求。其他浏览器(和以前的 IE 版本)正确使用原始 jsessionID 而不是作为对内部生成的 favicon 请求的响应而返回的那个。

解决方案:我更改了应用程序中的网站图标链接,并将它们指向安全服务器区域之外。

            @Override
            public void modifyBootstrapPage(BootstrapPageResponse response) {
                // FIX for IE11 at Windows 10 after anniversary update
                response.getDocument().head().getElementsByAttributeValue("rel", "shortcut icon").attr("href", "/static/favicon.ico");
                response.getDocument().head().getElementsByAttributeValue("rel", "icon").attr("href", "/static/favicon.ico");
            }