Java Tomcat Servlet Cookies示例不工作

Java Tomcat Servlet Cookies示例不工作,java,tomcat,servlets,cookies,runtime-error,Java,Tomcat,Servlets,Cookies,Runtime Error,我试图运行Tomcat中的cookie示例,但它给我带来了问题。Tomcat为程序显示的源代码是 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class CookieExample extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)

我试图运行Tomcat中的cookie示例,但它给我带来了问题。Tomcat为程序显示的源代码是

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class CookieExample extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        // print out cookies

        Cookie[] cookies = request.getCookies();
        for (int i = 0; i < cookies.length; i++) {
            Cookie c = cookies[i];
            String name = c.getName();
            String value = c.getValue();
            out.println(name + " = " + value);
        }

        // set a cookie

        String name = request.getParameter("cookieName");
        if (name != null && name.length() > 0) {
            String value = request.getParameter("cookieValue");
            Cookie c = new Cookie(name, value);
            response.addCookie(c);
        }
    }
}
import java.io.*;
导入javax.servlet.*;
导入javax.servlet.http.*;
公共类CookieExample扩展了HttpServlet{
public void doGet(HttpServletRequest请求、HttpServletResponse响应)
抛出IOException、ServletException
{
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
//打印饼干
Cookie[]cookies=request.getCookies();
for(int i=0;i0){
字符串值=request.getParameter(“cookieValue”);
Cookie c=新Cookie(名称、值);
答复.addCookie(c);
}
}
}
我在(inti=0;I行得到了
java.lang.NullPointerException

我正在传递cookieName和cookieValue。我尝试先设置cookie,然后打印它,但它在同一行给出了相同的错误。问题是,几个月前我尝试此程序时,它在Internet Explorer上运行良好,但在Chrome上运行不正常。我猜它提供了http作为名称,代理作为值

Cookie[] cookies = request.getCookies()
返回null,这是servlet引擎表示已提交零cookie的方式。您需要对此进行检查以保护for循环

它以前可能“有时”起作用,因为当时你的IE会话中碰巧有cookie,但没有发送chrome,从而允许循环执行