【问题标题】:Why liferay taglib <liferay-util:include > is not working?为什么 liferay taglib <liferay-util:include > 不工作?
【发布时间】:2016-04-04 13:25:58
【问题描述】:

在 liferay user_admin 的 jsp 页面中使用了 taglib liferay-util:include。

我在我的 portlet view.jsp 中使用它:

<liferay-util:include page="/html/book.jsp"   servletContext="<%=this.getServletContext() %>" />

我包括标签库:

<%@ taglib uri="http://liferay.com/tld/util" prefix="liferay-util" %>

当我转到 view.jsp 时没有任何错误。但是 page book.jsp 不包含在 view.jsp 中。

怎么了?

【问题讨论】:

  • 请有人帮帮我。
  • this.getServletContext() 解决了什么问题?
  • 你可以试试request.getServletContext()request.getSession().getServletContext()吗?
  • @Parkash Kumar thakx。我尝试使用您的选项,但 id 不起作用。

标签: liferay


【解决方案1】:

这样对我有用:

<%@ taglib uri="http://liferay.com/tld/util" prefix="liferay-util" %>
<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>
<liferay-theme:defineObjects />

<liferay-util:include page="/html/book.jsp" useCustomPage="false" servletContext="<%= application %>"/>

(首先我认为 useCustomPage="false" 解决了这个问题,但不是, 当我测试它时,文件缓存是原因,所以你不必使用 useCustomPage="false")

注意,该门户必须重新启动,因为它会缓存文件,如果过去由于某种原因没有找到,它不会在文件系统上再次搜索它并且不会包含它并且重新部署不会清空缓存。

我使用 6.2 CA G5。

【讨论】:

  • 嗨,彼得 B。请原谅我稍后回答。它适用于一个jsp页面,不适用于其他页面。我确实为项目中的所有页面复制该页面并替换为它们。
  • 这样您就可以找到解决问题的方法。不过,这个问题很有趣。也许,如果您怀疑是什么导致了这种特殊现象,您可以写下您的答案。
猜你喜欢
  • 1970-01-01
  • 2011-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-27
  • 2018-12-19
  • 1970-01-01
相关资源
最近更新 更多