您的位置:首页 > Web前端

终于解决了liferay的缓存问题!

2008-02-27 11:20 477 查看

板 要我编写一个统计页面访问量的Portlet,整了快20天了,始终因为liferay在未signin时页面不刷新,而无法解决每个领域的访问量统计。 一直怀疑是Tomcat的缓存在作梗,网上搜罗了好几天,试过了N种方法,就是不行。今天突然发现下面文章,眼睛顿时一亮:

liferay页面缓存问题解决

  Liferay页面使用缓存,在未登录时,页面只做一次加载,即使对JSP文件修改,页面有时也没法重新加载。但在登录之后,每一个请求每一个页面时都会重新加载。在网上查了很多资料,使用那些方法对一般的JSP页面都有作用,但对Liferay却没有效果。
  经过研究发现,Liferay缓存是通过filter实现的,即 com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter,在 system.properties中有对应的设置, com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter=false,则 每次都有对服务器重新请求。

飞速按他说的去做,发现没反映,研究发现,这只是针对开发环境的设置。所以在Tomcat目录中找到
web.xml(D:/lifeportal/tomcat/webapps/ROOT/WEB-INF),打开后修改如下:
将:
<filter>
<filter-name>Layout Cache Filter - Friendly</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>0</param-value>
</init-param>
</filter>
<filter>
<filter-name>Layout Cache Filter - Layout</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>1</param-value>
</init-param>
</filter>
<filter>
<filter-name>Layout Cache Filter - Resource</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>2</param-value>
</init-param>
</filter>

改为:<filter>
<filter-name>Layout Cache Filter - Friendly</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>0</param-value>
</init-param>
</filter>
<filter>
<filter-name>Layout Cache Filter - Layout</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>0</param-value>
</init-param>
</filter>
<filter>
<filter-name>Layout Cache Filter - Resource</filter-name>
<filter-class>com.liferay.portal.servlet.filters.layoutcache.LayoutCacheFilter</filter-class>
<init-param>
<param-name>pattern</param-name>
<param-value>0</param-value>
</init-param>
</filter>

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: