js cookie设置如下:setCookie("wallTVCodeStreamType", wallTVCodeStreamType, 3650);
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
在servlet那边读cookie如下:Cookie[] cookies=this.getRequest().getCookies();
for(Cookie c:cookies){
if(c.getName().equals("wallTVCodeStreamType")){
status.setIntRev1(Integer.valueOf(c.getValue()));
}
}
结果就是读不到

解决方案 »

  1.   

    代码没问题。
    注意:
    1 第二个参数wallTVCodeStreamType的值有效么?
    2 在含上述JS的页面中提交form访问Servlet才会有效果。
      

  2.   

    我现在做的事情是这样子的:
    有两个功能,一个功能是用来将系统配置保存到浏览器端,保存的方式就是COOKIE,这个保存的HTML页面在/client目录下,一个功能是登录,登录页面就在/下,我在登录时,需要把COOKIE信息提取出来,注入到SESSION里面,现在的问题就是在/client下保存的COOKIE,在/下读不出来
      

  3.   

    设置cookie的时候,指定path为登录时使用的根路径
      

  4.   

    //从请求对象中获得所有Cookie对象数组
    Cookie[] cs = request.getCookies();


    //判断用户以前是否保存过cookies
    /*if(cs==null){
    }*/
     //循环所有的 Cookie ,根据 name 查找 value
    if(cs!=null&&cs.length!=0){

    String name = "";

    for(Cookie c:cs){
    if("user".equals(c.getName())){
    name = c.getValue();
    }

    }
    request.setAttribute("loginname", name);
      

  5.   

    document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())+  "; path=/";加个路径试试