现在的配置开了3台tomcat,发现当登录后(登录后,struts2会作redirect到另一个action),保存的session就会丢失,如果在只开1台的情况下,一切正常,请问,大家有遇到这样的问题吗?

解决方案 »

  1.   

    java:redirect 和forward的区别
    使用response.sendRedirect()地址栏将改变
    使用request.getRequestDispatcher().forward(request,response)地址栏中的信息保持不变只用通过方法2跳转 才能在新页取出来 redirect 会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.forward 发生在服务器内部, 在浏览器完全不知情的情况下发给了浏览器另外一个页面的response. 这时页面收到的request不是从浏览器直接发来了,可能己经放了数据.所以:
    request.setAttribute存的东西
    只用通过方法2跳转 才能在新页取出来 
      

  2.   

    但不明,我用1台tomcat完全正常。
      

  3.   

    请问,如果用redirect,在几台tomcat中如何解决?
      

  4.   

    Domain confused!!:8080/project1 ---web.xml + struts2.xml , action url only have  worked in that domaim 
    :8081/project2
    :8089/project3
      

  5.   

    事情已经解决,因为,在配置的3台tomcat服务中,session没有同步的原因,配置了集群的session复制,问题解决。
      

  6.   

    原来是这样,我还以为你开的多台独立的tomcat服务呢。下次描述问题,一定要说清楚啊。
      

  7.   

    以前没有配置多个tomcat,涨了点见识。