我目前正在运行具有以下属性的应用程序:
基于Java的Spring和Acegi
在Tomcat上运行5
我需要能够支持没有 cookie的用户会话.有人可以指出我正确的方向.
谢谢.
这个问题的完整答案是你所有答案的组合,所以我要总结一下:
无需在context.xml文件中设置cookies ="false".理想的功能是让tomcat使用它基于url的会话标识,如果用户不支持cookie,默认情况下将使用该标识.
当用户未启用cookie时,tomcat将通过请求的url中的"JSESSIONID"参数来标识会话.几个示例网址如下所示
http://www.myurl.com;jsessionid=123456AFGT3
http://www.myurl.com;jsessionid=123456AFGT3?param1=value¶m2=value2
请注意会话ID不是url查询字符串的一部分(这是j2ee标准)
为了确保将jsessionid参数附加到您的所有请求URL,您不能使用纯url引用.例如,在JSTL中,您必须使用
<% - 这很糟糕: - %> 链接 a>
<% - 这很好: - %> 链接 a>
参见http://tomcat.apache.org/tomcat-5.5-doc/config/context.html。
在文件META-INF / context.xml中,