为什么每次刷新页面时weblogic都会创建新会话?

时间:2015-03-12 14:55:43

标签: java jsp servlets weblogic-10.x

在我的jsp页面中,我有代码

<%
    System.out.println("_--------------_-");
    System.out.println(session);
%>

我的web.xml:

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Онлайн библиотека. Лаб. р.3 </display-name>
    <welcome-file-list>
        <welcome-file>jsp/index.jsp</welcome-file>
    </welcome-file-list>

    <context-param>
        <param-name>log4j-config-location</param-name>
        <param-value>resources/log4j.properties</param-value>
    </context-param>

    <servlet>
        <servlet-name>MainServlet</servlet-name>
        <servlet-class>sumy.javacourse.library.controller.Main</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>MainServlet</servlet-name>
        <url-pattern>/action</url-pattern>
    </servlet-mapping>

    <error-page>
        <exception-type>sumy.javacourse.library.controller.LibServerException</exception-type>
        <location>/jsp/server_error.jsp</location>
    </error-page>

    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>

</web-app>

当我刷新页面时,我总是会收到一个新会话。请告诉我我做错了什么? 附:当我在码头上运行时一切都很好。我总是收到同样的会话。

Jetty output

Weblogic

我将jsp更改为:

<html>
  <body>
    Session ID: <%=session.getId()%>
    <br />
    <a href="?t=<%=new java.util.Date().getTime()%>">click me</a>
  </body>
</html>

当我点击Jetty链接时,我收到相同的会话ID。 在weblogic中 - 不同。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案:我使用了chrome并且它不起作用,当我在firefox中尝试它时一切都很好;)在chrome中你必须清除你的缓存。 也许这很愚蠢,但我花了一整天时间来解决这个问题,也许有人觉得它很有用。