私はJSFの問題に対処してきましたが、アプリ内のページにリダイレクトすることはうまくいきますが、外部URLにリダイレクトすることができませんでしたが、誰かがこれをガイドできますか?
_<a>
_または_<h:outputLink>
_でURLを直接言及するだけです。
_<a href="http://stackoverflow.com">Go to this site!</a>
<!-- or -->
<h:outputLink value="http://stackoverflow.com">Go to this site!</h:outputLink>
_
または、以下のように_<h:commandLink>
_を使用してBeanアクションを呼び出す必要がある場合、
_<h:form>
<h:commandLink value="Go to this site!" action="#{bean.redirect}" />
</h:form>
_
次に、アクションメソッドで ExternalContext#redirect()
を使用します。
_public void redirect() throws IOException {
// ...
ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
externalContext.redirect("http://stackoverflow.com");
}
_
IOException
をキャッチする必要はないことに注意してください。サーバーはそれを処理します。また、URLにスキーム(_http://
_または_https://
_または_//
_)を含めることの重要性に注意してください。そうしないと、現在のドメインに関連して解釈されます。