weblogic加websphere集群项目,session失效的问题,求高人指点~
一个weblogic加websphere集群项目,门户系统在websphere下,在门户系统首页用了一个iframe嵌入其它的子系统,在点击了一个部署在weblogic子...
一个weblogic加websphere集群项目,门户系统在websphere下,在门户系统首页用了一个iframe嵌入其它的子系统,在点击了一个部署在weblogic子系统后,在主页点击其它子系统功能会回到登陆页面,主系统和子系统分别部署在同一个服务器下的不同中间件下,求教怎么修改啊,急急急。
展开
2个回答
展开全部
如果是同一个服务器的话,应该是没有传递jsessionId,可以看下这个文章http://blog.csdn.net/yingevil/article/details/6916550,
response.encodeURL()和response.encodeRedirectURL()。这2个方法会判断cookie是否可用,如果禁用了会解析出url中的jsessionid,并连接到指定的url后面,如果没有找到jessionid会自动帮我们生成一个。至于为什么要有2个方法?这2个方法有什么不同?google了一下,说是这2个方法在判断是否要包含jsessionid的逻辑上会稍有不同。在调用 HttpServletResponse.sendRedirect前,应该先调用encodeRedirectURL()方法,否则可能会丢失 Sesssion信息。这2个方法的使用方法如:response.sendRedirect(response.encodeURL("/myapp /input.jsp"));。如果cookie没有禁用,我们在浏览器地址栏中看到的地址是这样的:/myapp/input.jsp,如果禁用了 cookie,我们会看到:/myapp /input.jsp;jsessionid=73E6B2470C91A433A6698C7681FD44F4。所以,我们在写web应用的时候,为了保险起见,应该在程序里的每一个跳转url上都使用这2个方法,来保证session的可用性。
response.encodeURL()和response.encodeRedirectURL()。这2个方法会判断cookie是否可用,如果禁用了会解析出url中的jsessionid,并连接到指定的url后面,如果没有找到jessionid会自动帮我们生成一个。至于为什么要有2个方法?这2个方法有什么不同?google了一下,说是这2个方法在判断是否要包含jsessionid的逻辑上会稍有不同。在调用 HttpServletResponse.sendRedirect前,应该先调用encodeRedirectURL()方法,否则可能会丢失 Sesssion信息。这2个方法的使用方法如:response.sendRedirect(response.encodeURL("/myapp /input.jsp"));。如果cookie没有禁用,我们在浏览器地址栏中看到的地址是这样的:/myapp/input.jsp,如果禁用了 cookie,我们会看到:/myapp /input.jsp;jsessionid=73E6B2470C91A433A6698C7681FD44F4。所以,我们在写web应用的时候,为了保险起见,应该在程序里的每一个跳转url上都使用这2个方法,来保证session的可用性。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询