我不知道怎么选择代码啊 我的这个文件是JSP的文件 
 代码如下:
<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head>
<title>设置cookie保存的时间</title>
</head>
<body>
<%
Cookie c1=new Cookie("lxh","李兴华");
Cookie c2=new Cookie("mldn","www.baidu.com");
c1.setMaxAge(60);
c2.setMaxAge(60);
// response.addCookie(c1);
response.addCookie(c2);
%>
</body>
</html>
不知道为什么 同样的代码 response.addCookie(c2);的话 就可以 但是把c1也添加进去的话 就报错 就是注释掉的那行 那位大侠帮忙解决下  这是什么原因呢? 

解决方案 »

  1.   

    <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
    <%@page import="java.net.URLEncoder"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    String name="李兴华";
    name=URLEncoder.encode(name,"utf-8");
    Cookie c1=new Cookie("lxh",name);
    Cookie c2=new Cookie("mldn","www.baidu.com");
    c1.setMaxAge(60);
    c2.setMaxAge(60);
     response.addCookie(c1);
    response.addCookie(c2);
    %>可先把存储的中文用utf-8编码一下。。
    name=URLEncoder.encode(name,"utf-8");
      

  2.   

    HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /JspInsideObject/response_demo08.jsp at line 1411:  c2.setMaxAge(60);
    12: // response.addCookie(c1);
    13:  response.addCookie(c2);
    14:  response.addCookie(a);
    15: %>
    16: </body>
    17: </html>
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:519)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:428)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause java.lang.IllegalArgumentException: Control character in cookie value, consider BASE64 encoding your value
    org.apache.tomcat.util.http.ServerCookie.maybeQuote2(ServerCookie.java:396)
    org.apache.tomcat.util.http.ServerCookie.maybeQuote2(ServerCookie.java:389)
    org.apache.tomcat.util.http.ServerCookie.appendCookieValue(ServerCookie.java:293)
    org.apache.catalina.connector.Response.generateCookieString(Response.java:1063)
    org.apache.catalina.connector.Response.addCookieInternal(Response.java:1035)
    org.apache.catalina.connector.Response.addCookieInternal(Response.java:1020)
    org.apache.catalina.connector.Response.addCookie(Response.java:968)
    org.apache.catalina.connector.ResponseFacade.addCookie(ResponseFacade.java:343)
    org.apache.jsp.JspInsideObject.response_005fdemo08_jsp._jspService(response_005fdemo08_jsp.java:66)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.32 logs.
      

  3.   

    HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /JspInsideObject/response_demo08.jsp at line 129:  Cookie c2=new Cookie("mldn","www.baidu.com");
    10:  c1.setMaxAge(60);
    11:  c2.setMaxAge(60);
    12:  response.addCookie(c1);
    13:  response.addCookie(c2);
    14: %>
    15: </body>
    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:519)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:428)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause java.lang.IllegalArgumentException: Control character in cookie value, consider BASE64 encoding your value
    org.apache.tomcat.util.http.ServerCookie.maybeQuote2(ServerCookie.java:396)
    org.apache.tomcat.util.http.ServerCookie.maybeQuote2(ServerCookie.java:389)
    org.apache.tomcat.util.http.ServerCookie.appendCookieValue(ServerCookie.java:293)
    org.apache.catalina.connector.Response.generateCookieString(Response.java:1063)
    org.apache.catalina.connector.Response.addCookieInternal(Response.java:1035)
    org.apache.catalina.connector.Response.addCookieInternal(Response.java:1020)
    org.apache.catalina.connector.Response.addCookie(Response.java:968)
    org.apache.catalina.connector.ResponseFacade.addCookie(ResponseFacade.java:343)
    org.apache.jsp.JspInsideObject.response_005fdemo08_jsp._jspService(response_005fdemo08_jsp.java:64)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.32 logs.
      

  4.   

    就是编码的问题,写cookie必须注意编码
      

  5.   

    java.lang.IllegalArgumentException: Control character in cookie value, consider BASE64 encoding your value给你报的错啊!!