登录时把用户信息放到session中了,ActionContext.getContext().getSession().put("user", user1);
然后有一个控制权限的filter和一个文件上传的servlet,现在问题出现了。在filter用下面的方法取user能取到
HttpSession session = ((HttpServletRequest)req).getSession();
User user = (User)session.getAttribute("user");
但是在上传文件那个servlet里去user取到的是空,用的方法是
HttpSession session = request.getSession();
User user = (User)session.getAttribute("user");
断点一步一步跟的,就是取不到。最后我在struts里登录的代码改了一下改成下面的
ActionContext.getContext().getSession().put("user", user1);
ServletActionContext.getRequest().getSession().setAttribute("user", user1);
断点跟了 还是取不到,但在filter里能取到啊,而且在servlet和filter中取到的session都不是一个值,我也试着getSession(false)了,但是这样就空指针了。。求助。。谁能告诉我why,据说csdn高手很多滴。。
然后有一个控制权限的filter和一个文件上传的servlet,现在问题出现了。在filter用下面的方法取user能取到
HttpSession session = ((HttpServletRequest)req).getSession();
User user = (User)session.getAttribute("user");
但是在上传文件那个servlet里去user取到的是空,用的方法是
HttpSession session = request.getSession();
User user = (User)session.getAttribute("user");
断点一步一步跟的,就是取不到。最后我在struts里登录的代码改了一下改成下面的
ActionContext.getContext().getSession().put("user", user1);
ServletActionContext.getRequest().getSession().setAttribute("user", user1);
断点跟了 还是取不到,但在filter里能取到啊,而且在servlet和filter中取到的session都不是一个值,我也试着getSession(false)了,但是这样就空指针了。。求助。。谁能告诉我why,据说csdn高手很多滴。。
解决方案 »
- 在jsp上点击按钮 提交页面信息 这个没有servlet怎么实现啊
- 请问怎样截获spring的servlet context初始化完成事件
- 求解什么错误【java Web】
- 如何把[face:temp1]格式的字符串替换成urltemp1img
- jspsmart upload 接收 utf-8中文时乱码
- weblogic调试web项目,debug模式正常,运行模式下报空指针
- 新手关于tomcat 5调试jsp页面的问题
- 表单提交,求JS源码。
- 谁有用Servlet或JavaBean实现文件上传的源码?
- swagger UI 输入汉字参数传到后台后乱码
- js解析json数据.....在线等。。
- jsp 设置response.setHeader("WWW-Authenticate", "NTLM")页面submit,获得表单的对象为null
首先我重新写了个servlet,登录后用url请求这个servlet没问题,能取到,
然后我把上传文件的页面的表单改了一下 改成普通表单请求这个上传文件的servlet,也能取到
最后我改成上传文件的表单,文件上传上去了,又悲剧了。
怎么回事?
比如有的带Flash的上传文件插件,浏览器会为Flash新开一个Session,新开的Session里自然就没有登录信息了。这种时候必须通过别的途径指明登录用户身份
1 网页如果使用了iframe/frameset技术,session就容易出问题。
2 上传的时候,form的编码方式是不一样的,Server端解析的时候,很难说不出问题。
3 如果禁用了Cookie,则Session要靠URL重写来实现,如果同时又是上传,则更难说不出问题。
这个取决于浏览器,对于uploadify,好像IE就不会重开session,火狐就会