【问题标题】:Liferay and Primefaces Resources cachingLiferay 和 Primefaces 资源缓存
【发布时间】:2014-09-30 20:27:21
【问题描述】:

我开发了许多在 Liferay 环境中运行的 Primefaces portlet。由于我们在同一个Liferay页面中有很多portlet,为了避免head部分会导入多个primefaces资源(javascript、css ecc),我们使用liferay-portlet.xml配置文件来导入资源。

现在我注意到像 dot_clear.gif,jsf.js 这样的资源没有被浏览器缓存(返回代码 200),它们需要时间来加载。不幸的是,我将表演作为主要要求。 我已将 web.xml 配置为生产阶段,但没有成功:

    <context-param>
      <param-name>javax.faces.PROJECT_STAGE</param-name>
      <param-value>Production</param-value>
   </context-param>
   <context-param>
      <param-name>com.sun.faces.allowTextChildren</param-name>
      <param-value>true</param-value>
   </context-param>
   <context-param>
         <param-name>javax.faces.FACELETS_REFRESH_PERIOD</param-name>
       <param-value>-1</param-value>
   </context-param>
   <context-param>
         <param-name>com.sun.faces.defaultResourceMaxAge</param-name>
       <param-value>10800000</param-value>
   </context-param>

我应该实现一个自定义的 ResourceHandler 来绕过这个还是有一些其他的解决方法?

谢谢

我正在使用 PirmeFaces 3.5.23、mojarra 2.1.21 Liferay 6.1.3ga3 和 bridge 3.1.3ga4

【问题讨论】:

    标签: jsf jsf-2 primefaces liferay-6


    【解决方案1】:

    在 Liferay 6.2 上的一个项目中,我们遇到了相同的 primefaces 资源问题。

    我们已经通过更改 Liferay 属性解决了:

    layout.parallel.render.enable=false 
    

    Liferay Faces Bridge 的一个功能是检测

    标签中的重复资源并渲染一个。但这不适用于某些 Liferay 安装。将属性设置为 false 修复它。

    您可以查看 Neil Griffin 的this blog 了解更多详情。

    【讨论】:

      猜你喜欢
      • 2013-11-30
      • 2017-07-12
      • 2014-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-08
      • 2015-10-03
      • 2021-10-06
      相关资源
      最近更新 更多