Jetspeed 2
  1. Jetspeed 2
  2. JS2-759

Jetspeed caches content of portal pages unexpectedly

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.1.2
    • Fix Version/s: 2.1.3
    • Component/s: Components Core
    • Labels:
      None
    • Environment:
      java 1.5, SuSe 10, tomcat 5.5.20

      Description

      I've created some portal pages. All of them are caching unexpectedly (full content of page was cached). After restarting portal pages are still the same after refreshing page.

      Some additional info:
      Http Response Headers for Cache-Control: no-cache,no-store,private
      All of my portlet has expiration_time = 0 in portlet.xml.
      I'm writing current time in header.vm. After refreshing page time doesn't change. It still has the same value when page was load at first time.
      When changing decorator for portlet or theme for a page or moving portlets on the page, page is reloading successfully! Another way page doesn't reloading!

      My 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>Jetspeed-2 Enterprise Portal</display-name>

      <!-- Log4JConfigurator context-listener parameters -->
      <context-param>
      <param-name>log4j.config.file</param-name>
      <param-value>/WEB-INF/conf/Log4j.properties</param-value>
      </context-param>
      <context-param>
      <param-name>log4j.config.webApplicationRoot.key</param-name>
      <param-value>applicationRoot</param-value>
      </context-param>

      <filter>
      <filter-name>XXSUrlAttackFilter</filter-name>
      <filter-class>org.apache.jetspeed.engine.servlet.XXSUrlAttackFilter</filter-class>
      </filter>

      <filter-mapping>
      <filter-name>XXSUrlAttackFilter</filter-name>
      <url-pattern>/*</url-pattern>
      </filter-mapping>

      <listener>
      <listener-class>org.apache.jetspeed.webapp.logging.Log4JConfigurator</listener-class>
      </listener>

      <listener>
      <listener-class>org.apache.jetspeed.engine.JetspeedServlet</listener-class>
      </listener>

      <servlet>
      <servlet-name>jetspeed</servlet-name>
      <servlet-class>org.apache.jetspeed.engine.JetspeedServlet</servlet-class>
      <init-param>
      <param-name>properties</param-name>
      <param-value>/WEB-INF/conf/jetspeed.properties</param-value>
      </init-param>
      <init-param>
      <param-name>applicationRoot</param-name>
      <param-value>webContext</param-value>
      </init-param>
      <load-on-startup>1</load-on-startup>
      </servlet>

      <!-- Define Velocity template compiler -->
      <servlet>
      <servlet-name>velocity</servlet-name>
      <servlet-class>org.apache.jetspeed.velocity.JetspeedVelocityViewServlet</servlet-class>
      <init-param>
      <param-name>org.apache.velocity.toolbox</param-name>
      <param-value>/WEB-INF/toolbox.xml</param-value>
      </init-param>
      <init-param>
      <param-name>org.apache.velocity.properties</param-name>
      <param-value>/WEB-INF/velocity.properties</param-value>
      </init-param>
      <init-param>
      <param-name>org.apache.jetspeed.cache.size</param-name>
      <param-value>50</param-value>
      </init-param>
      <init-param>
      <param-name>org.apache.jetspeed.cache.validation.interval</param-name>
      <param-value>-1</param-value>
      </init-param>
      <load-on-startup>10</load-on-startup>
      </servlet>

      <servlet>
      <servlet-name>LoginProxyServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.login.LoginProxyServlet</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>LoginServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.login.LoginServlet</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>LoginErrorServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.login.LoginErrorServlet</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>LoginRedirectorServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.login.LoginRedirectorServlet</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>LogoutServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.login.LogoutServlet</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>ManagerServlet</servlet-name>
      <servlet-class>org.apache.jetspeed.manager.ManagerServlet</servlet-class>
      </servlet>

      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /portal/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /portlet/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /jetspeed/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /fileserver/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /ajaxapi/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /ajax/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /desktop/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /action/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /render/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /configure/*
      </url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>
      jetspeed
      </servlet-name>
      <url-pattern>
      /dtconfigure/*
      </url-pattern>
      </servlet-mapping>

      <!-- Map *.vm files to Velocity -->
      <servlet-mapping>
      <servlet-name>velocity</servlet-name>
      <url-pattern>*.vm</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>LoginProxyServlet</servlet-name>
      <url-pattern>/login/proxy</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>LoginServlet</servlet-name>
      <url-pattern>/login/login</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>LoginErrorServlet</servlet-name>
      <url-pattern>/login/error</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>LoginRedirectorServlet</servlet-name>
      <url-pattern>/login/redirector</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>LogoutServlet</servlet-name>
      <url-pattern>/login/logout</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>ManagerServlet</servlet-name>
      <url-pattern>/manager/*</url-pattern>
      </servlet-mapping>

      <!-- The Usual Welcome File List -->
      <welcome-file-list>
      <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>

      <!-- JNDI Db resource -->
      <resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/jetspeed</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
      </resource-ref>

      <!-- Protect LogInRedirectory.jsp. This will require a login when called -->
      <security-constraint>
      <web-resource-collection>
      <web-resource-name>Login</web-resource-name>
      <url-pattern>/login/redirector</url-pattern>
      </web-resource-collection>
      <auth-constraint>
      <!-- the required portal user role name defined in: -->
      <!-- /WEB-INF/assembly/security-atn.xml -->
      <role-name>portal-user</role-name>
      </auth-constraint>
      </security-constraint>

      <!-- securing the ManagerServlet -->
      <security-constraint>
      <web-resource-collection>
      <web-resource-name>Manager</web-resource-name>
      <url-pattern>/manager/*</url-pattern>
      </web-resource-collection>
      <auth-constraint>
      <role-name>admin</role-name>
      </auth-constraint>
      </security-constraint>

      <!-- Login configuration uses form-based authentication -->
      <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>Jetspeed</realm-name>
      <form-login-config>
      <form-login-page>/login/login</form-login-page>
      <form-error-page>/login/error</form-error-page>
      </form-login-config>
      </login-config>

      </web-app>

        Issue Links

          Activity

          Vitaly Baranovsky created issue -
          David Sean Taylor made changes -
          Field Original Value New Value
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Fix Version/s 2.1.3 [ 12312573 ]
          Vitaly Baranovsky made changes -
          Link This issue blocks JS2-751 [ JS2-751 ]
          Ate Douma made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Gavin made changes -
          Link This issue blocks JS2-751 [ JS2-751 ]
          Gavin made changes -
          Link This issue is depended upon by JS2-751 [ JS2-751 ]

            People

            • Assignee:
              Unassigned
              Reporter:
              Vitaly Baranovsky
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development