0

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而且由于我在(而不是)中创建了 bean 的实例ServletReceiver,如果我获得了request可以获取 cookie 值的对象,那么我可以在 PhaseListener 的 bean 中设置它。

我的 bean 是request作用域的。

那么,有没有办法让request对象进入CustomPhaseListener

另外,我正在检索方法中的 Cookie doGet。这是建议的吗?

我正在使用 JSF 1.2

4

0 回答 0