javax.servlet.Filter を使用して a4j リクエストを傍受する方法を知っている人はいますか? インターセプトは、FacesServlet が呼び出される前に発生する必要があります (これが、フィルターを使用して行うことを計画している理由です)。
最初に動的制御を行う必要があるため、backbean で実行されるメソッドを知りたいです。
javax.servlet.Filter を使用して a4j リクエストを傍受する方法を知っている人はいますか? インターセプトは、FacesServlet が呼び出される前に発生する必要があります (これが、フィルターを使用して行うことを計画している理由です)。
最初に動的制御を行う必要があるため、backbean で実行されるメソッドを知りたいです。
a4jリクエストのマーカーのリクエストヘッダーを決定したいとします。私はa4jをしませんが、それがうまく機能していれば、X-Requested-With
ヘッダーに基づいてそれを決定できるはずです。
String requestedWith = request.getHeader("X-Requested-With");
次にif
、値がa4j要求に期待される値であるかどうかをブロックで判別し、それに応じて処理します。必要に応じて、最後にフィルターチェーンを継続することを忘れないでください。
if (requestedWith.equals(someAjax4jsfSpecificValue)) {
// Do your job.
}
chain.doFilter(request, response);
<servlet-name>
実行するには、FacesServlet
現在で定義されているのにマップするだけweb.xml
です。
<filter-mapping>
<filter-name>yourFilter</filter-name>
<servlet-name>facesServlet</servlet-name>
</filter-mapping>