JSP Cookie变量检测为Boolen而不是Cookie

时间:2013-02-11 16:16:06

标签: java jsp

我在Servlet中设置Cookie如下所示

  Cookie NameCookie = new Cookie("Name", "Mugil Vannan");         
  NameCookie.setMaxAge(30*60);
  response.addCookie(NameCookie);

  Cookie LocationCookie = new Cookie("Location", "India");
  LocationCookie.setMaxAge(30*60);
  response.addCookie(LocationCookie);

设置cookie后,我试图访问名称

下的特定Cookie集
Cookie[] cookies = request.getCookies();            


  for (int i = 0; i < cookies.length; i++) 
  {
        Cookie cookie = cookies[i].getName().equals("Name");

        String cookieName  = cookie.getName();
        String cookieValue = cookie.getValue();
        out.print(cookieValue);
  }

现在它显示为 TypeMismatch:无法将布尔值转换为Cookie

饼干[I] .getName()等于( “姓名”);

任何想法为什么会发生这种情况

2 个答案:

答案 0 :(得分:1)

我认为这是你的问题Cookie cookie = cookies[i].getName().equals("Name");

你的意思是:

Cookie cookie = cookies[i];
if (cookie.getName().equals("Name")) {
    String cookieName  = cookie.getName();
    String cookieValue = cookie.getValue();
    out.print(cookieValue);
}

答案 1 :(得分:0)

一旦您的声明在Cookie上完成,您就不需要再次申报 密钥是&#34;名称&#34;就像你写的那样。

if(cookie[i].getName().equals("Name")){
    String cookieName  = cookie.getName();
    String cookieValue = cookie.getValue();
    out.print(cookieValue);
}

这将显示cookie值,其中key(name)=&#34; Name&#34;