0
我們正在使用ICEFaces 1.8,我想執行一個新的URL轉發,但希望它在新窗口中打開。我們目前能夠執行重定向到一個新的窗口:是否可以在新窗口中執行前進?
public static void redirectToUrl(String urlPath) {
if (urlPath != null) {
try {
final String url = FacesUtil.getContextPath() + urlPath;
final StringBuffer jsCommand = new StringBuffer();
jsCommand.append("window.document.location.href='").append(url).append("';");
JavascriptContext.addJavascriptCall(FacesContext.getCurrentInstance(), jsCommand.toString());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
但在前向可能使用類似的方法?
雖然是發出新的請求嗎?我正在丟失打開新窗口的屏幕上的數據。我想這樣做的原因是因爲我們的支持bean都在請求範圍內,任何重定向都會導致我的bean超出範圍。 使用導航規則實際上使我的數據保持在範圍內,因爲它執行前進。但是,我希望在新窗口中打開它,而不是替換當前瀏覽器窗口的內容。 – sma 2010-04-01 15:27:41