vaadin8 - vaadin 8 中 setLogoutURL 方法的替代品是什么
问题描述
我们的 vaadin 6 应用程序在另一个 Web 应用程序提供的浏览器弹出窗口中运行。但是,该网络应用程序不知道我们的应用程序何时完成,因此关闭浏览器弹出窗口的责任在我们身上。我们在 vaadin 6 中通过使用 setLogoutURL 方法在 vaadin 应用程序关闭后重定向到另一个 servlet 并从该 servlet 运行 JS 命令 window.close() 来做到这一点。
我在 vaadin 8 中没有找到类似的 setLogoutURL 概念。在同一场景中,它的替代品是什么?基本上,我正在寻找一个可以运行 JS 命令以在 vaadin UI 正确关闭后关闭浏览器弹出的钩子。我假设以下代码不起作用。
myUI.close();
JavaScript.getCurrent().execute("window.close()");
// let this thread go back to vaadin framework here
因为 close() 和 execute() 可能会竞争。
解决方案
在 Vaadin 8 中,注销过程的最佳实践确实有所不同。您应该通过 Vaadin 会话使 http 会话无效,并在使用带有注销 url 的设置位置之后。
vaadinSession.getSession().invalidate();
ui.getPage().setLocation("");
推荐阅读
- python - 如何从python pyqt中的不同类调用函数
- java - 在 Java 中调用类中的方法
- c++ - 每个包含 3 个元素的数组中最近点的索引
- python - Python:如何读取 csv 并循环清理数据
- json - 在Java中有效地分组和创建Json
- android - 如何在 Android Java 中使用 onclicklistener 获取按钮文本?
- python - 如何用“”替换“,”?如何删除值中的逗号?
- python-3.x - TypeError:“float”对象不能解释为整数:有办法吗?
- android - 单击两次底部导航栏时,RecyclerView 不显示项目
- c++ - 如何通过 UDP 发送多播数据 - 使用全局地址的 IPv6