Struts的Session问题

红薯 发布于 2009/01/06 13:18
阅读 950
收藏 0

【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”

在用Struts的时候发现这样一个问题,不管我们的程序中是否创建了一个新的session,从页面提交表单到action类,再跳转到页面的时候url中总是出现了;jsessionid这样的一长串内容,这是由于新建的session导致容器产生的。

经过深入研究struts的代码发现问题所在,原来是struts在处理自动Locale时导致的,struts调用了 request.getSession()方法,该方法等同于 request.getSession(true) ,相当于不存在session时就自动创建一个新的session,于是就出现前面提到的现象。

要解决这个问题必须关闭struts的自动Locale的功能,不过很简单,只用在struts-config.xml的controller配置增加一个locale参数值等于false即可,如:

<controller locale="false"/>

加载中
0
xzg
xzg

不错,挺好的

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部