Servletリンクからヒットしています。一部Cookiesはクライアントですでに設定されています。私Servletがヒットしたとき、これらを取得したいCookies。
たとえば、http:/myDomain/myServlet/ServletReceiver のようなリンクにアクセスしています。
ではweb.xml、以下のコードがあります
<servlet>
<display-name>ServletReceiver</display-name>
<servlet-name>ServletReceiver</servlet-name>
<servlet-class>(location of my ServletReceiver)</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletReceiver</servlet-name>
<url-pattern>/ServletReceiver</url-pattern>
</servlet-mapping>
そして、私の ServletReceiver コードは以下のとおりです
public class ServletReceiver extends HttpServlet{
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Cookie[] cookies = request.getCookies();
// Do some checks here based on cookies obtained and redirect to corresponding page
RequestDispatcher dispatcher=request.getRequestDispatcher("/pages/index.jsf");
dispatcher.forward(request, response);
}
}
私の要件は、からデータを取得するときに、Cookiesそれを Bean に設定したいということです。CustomPhaselistenerで(ではなくServletReceiver) でBean のインスタンスを作成しているため、 requestCookie 値を取得できるオブジェクトを取得すると、それを PhaseListener の Bean に設定できます。
私のBeanはrequestスコープされています。
それで、requestオブジェクトを取得する方法はありますCustomPhaseListenerか?
また、doGetメソッドで Cookie を取得しています。それは示唆されていますか?
JSF 1.2を使用しています