JSF 2.0使用外部上下文和faces-redirect = true打开一个新的浏览器窗口

时间:2013-09-05 19:32:16

标签: jsf jsf-2

我正在开发一个JSF 2.0应用程序。点击后,我在后端bean操作中执行一些逻辑,需要在新窗口中重定向到另一个URL,并在退出操作之前在我的原始bean操作中执行一些清理工作。我目前正在使用externalContext.redirect()方法以及“faces-redirect = true”(因为我有一些清理代码要在重定向发生后执行)。但是外部URL在同一窗口中打开。

我要求它在一个单独的新浏览器窗口中打开,同时执行重定向后的清理代码。能告诉我这是怎么做到的吗?

1 个答案:

答案 0 :(得分:4)

您无法从服务器端打开新的浏览器窗口/选项卡。这只能从客户端进行。其中一种方法是将target="_blank"属性添加到提交按钮所在的HTML表单中。

因此,在JSF术语中,那将是:

<h:form target="_blank">

这与支持bean代码所做的事情无关。它只是在服务器处理HTTP请求时同步运行。