Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在开发一个 JSF 2.0 应用程序。单击 时,我在后端 bean 操作中执行了一些逻辑,需要在新窗口中重定向到另一个 URL,并在退出操作之前在我的原始 bean 操作中执行一些清理工作。我目前正在使用 externalContext.redirect() 方法和“faces-redirect=true”(因为在重定向发生后我有一些清理代码要执行)。但是外部 URL 正在同一个窗口中打开。
我会要求它在单独的新浏览器窗口中打开,同时执行重定向后的清理代码。你能告诉我这是怎么做到的吗?
您无法从服务器端打开新的浏览器窗口/选项卡。这只能从客户端完成。其中一种方法是将target="_blank"属性添加到提交按钮所在的 HTML 表单中。
target="_blank"
因此,在 JSF 术语中,这将是:
<h:form target="_blank">
这与支持 bean 代码所做的任何事情都无关。它只是在服务器处理 HTTP 请求时同步运行。