tomcat是否会为每个转发到jsp页面创建一个新会话

时间:2011-07-21 17:37:09

标签: struts

我希望我的Web应用程序只包含一个在登录时创建的会话。但我的服务器正在为jsp页面的每个请求创建一个单独的会话。如何配置我的应用程序中只有一个会话?

1 个答案:

答案 0 :(得分:0)

如果为每个链接提供了sessionId,则会提交用户点击的

使用cookies

服务器可以将请求与特定用户相关联。否则将创建一个新会话。

编辑:

用于添加指向您网址的链接,以防您没有Cookie ...有一些方法可以做到这一点。手动设置sessionId

<a href="home.jsp;sessionId=<%=request.getSession().getId()%>">link</a>

或使用struts-taglibs为您https://struts.apache.org/1.2.x/userGuide/struts-html.html#link

  

将HTML元素呈现为锚定义(如果指定了“linkName”)或作为指向URL的超链接。 URL重写将自动应用,以在没有cookie的情况下维持会话状态。显示此超链接的内容将从此标记的正文中获取。

然后taglib会为您重写链接。它应该看起来像这样(未经测试):

<html:link page="/linkoutput.jsp">Link</html:link>