ここではOracle ADF 12cを使用しています。 私はセッションの有効期限処理のためにFilterを使用しています。Oracle ADF:PPRリクエストでResponse.sendRedirectが機能しない
セッションは、次のようにログインページにリダイレクトその後、有効期限が切れている場合:
response.sendRedirect("/myapp/faces/login.jsp");
しかし、ブラウザからの要求は、上記の指定されたリダイレクトが機能していないPPR(部分ページ・レンダリング)要求である場合。
これを解決するには、次のような解決策を試しました。post
ここで、リダイレクトはPPR要求に対して正常に動作しています。しかし、特別な部分的な応答xmlのために定期的な要求のために働いていません。
PPRリクエストと定期リクエストを区別するために、私は上記の投稿に指定された以下のチェックを追加しました。
if ("partial/ajax".equals(request.getHeader("Faces-Request"))) {
// It's a JSF ajax request.
}
しかし、ADF PPRリクエストは "-Requestを顔" リクエストヘッダを送信していません。したがって、PPR要求を含むすべての要求は、通常の要求として扱われます。
ADF PPRリクエストと通常のリクエストを区別する方法は?
OPにはこのようなヘッダーはありません。 – BalusC
@BalusC OPがおそらくヘッダーを見落としていたか、間違ったポストバックを探していました。 –
@ BalusCあなたの提案は、リクエストでは利用できない "Faces-Request"という名前のヘッダです。 Aswin Prabhuはヘッダが "Adf-Rich-Message"であり、リクエストヘッダで利用可能であることを提案しました。 – Awesome