我有一个jsp页面,它返回HTTP页面上显示的内容,我的应用程序的其余部分是HTTPS。
现在,当我在HTTP页面上从我的HTTPS浏览到我的jsp时,我丢失了我的cookie(来自HTTPS的cookie是安全的,而且在HTTP页面中是不允许的)。所以我在我的jsp页面标题中添加了 session = false ,但是当我调用我的jsp时,我仍然收到一个JSESSIONID,我想我不希望这样。
因为如果来自http页面的jsessionid与来自https的jsessionid不同,我会被注销。
那么如何阻止JSP创建JSESSIONID?
ps:我正在使用tomcat 6。
答案 0 :(得分:1)
当您访问JSP页面时,指令<@page session="false">
将消除自动创建HTTP会话。
详情请见:
http://docs.oracle.com/cd/A97688_16/generic.903/bp/j2ee.htm#1008677
澄清:如果您访问创建HTTP会话的其他页面(或资源),然后您使用指令<@page session="false">
访问该页面,则会话将不会被销毁。
答案 1 :(得分:1)
请确认您已将<@page session="false">
应用于所有包含的jsps。如果任何包含的jsp没有相同的页面属性,则父jsp仍将创建会话。