2
トークンが無効になった場合、セッションで設定されたトークンオブジェクトに対して何らかの認証を行うjavax.servlet.Filter
を実装するクラスがあります。403の禁止応答を返したいと思います。だから私は、私はそれから起こるしたいどのような何かサーブレットフィルタのレスポンスコードを設定する
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throw ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
...
...
// Something has gone wrong with auth set the response code and
// continue with the chain
response.setStatus(403);
chain.doFilter(request, response);
}
等を有していてweb.xmlで定義され
<error-page>
は403応答コードに対して
<error-page>
<error-code>403</error-code>
<location>/forbidden.xhtml</location>
</error-page>
をトリガするためである私はのそのネットワーク]タブを見ることができますブラウザのdevツールは403タイプの応答を正しく表示します。しかし、ブラウザは私が期待しているようなエラーページにリダイレクトしません、私はここで何が間違っていますか?
だった、私は戻ってUIへの応答を送信するためにカスタムエラーメッセージを使用しています。 \t \t \t \t \t キャッチ(例外e){ log.error(String.Formatの( "例外トークンの検証で発生しました:%s" は、e.getMessage()))。 \t((HttpServletResponse)response).sendError(401、AuthzError.INVALIDAUTHTOKEN.getDescription()); \t return; } \t \t \t \t \t \t \t \t \t} – Sindhu