无法使用weblogic在Spring MVC项目中设置会话值

时间:2015-03-24 16:51:19

标签: java session spring-mvc tomcat weblogic12c

我有一个控制器类,它将HttpServletRequest请求作为参数。然后我从请求中获取会话并在其上设置属性...然后请求进入下一页。然后,当用户单击该按钮并返回控制器类以再次从会话中获取值时,该值将消失。

这在Tomcat中完美运行,但在Weblogic中没有(我使用的是版本12)

非常直接

request.getSession().setAttribute("userName", userNameInUpperCase);

然后再次为null

request.getSession().getAttribute("userName");

是否需要在Weblogic中专门启用此功能。

我读了一篇文章,其中说我应该创建一个weblogic.xml文件cookie secure = false但它仍然不起作用。

<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"
xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/ns/weblogic/90
http://www.bea.com/ns/weblogic/90/weblogic-web-app.xsd">

<session-descriptor>
        <debug-enabled>true</debug-enabled>
        <persistent-store-type>replicated_if_clustered</persistent-store-type>
        <url-rewriting-enabled>true</url-rewriting-enabled>
        <cookies-enabled>true</cookies-enabled>
        <cookie-secure>false</cookie-secure>
</session-descriptor>

</weblogic-web-app>

1 个答案:

答案 0 :(得分:0)

我会检查set和get call执行之间的会话ID,看看你是否回到了另一个会话。另外,请确保您没有使用page指令禁用JSP上的会话。