1

私はプレーンな HTML ページを持っていますerror.html。私が使うとき

return "error.html?faces-redirect=true";

実際にはerror.xhtmlではなくにリダイレクトされerror.htmlます。

JSFアクションメソッドで非JSFページにリダイレクトするにはどうすればよいですか?

4

1 に答える 1

6

ナビゲーション ケースの結果は、JSF ビューとして扱われます。したがって、常に JSF ビューが必要です。error.html不明な理由でへの名前変更ができない場合(Facelets ページでプレーンな HTML を安全に使用error.xhtmlできることを思い出してください)ExternalContext#redirect()、.

public void someAction() throws IOException {
    // ...

    ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
    ec.redirect(ec.getRequestContextPath() + "/error.html");
}
于 2013-01-25T12:17:38.663 に答える