我需要生成几个 <liferay-ui:panel>
秒。我们的想法是拥有一个看起来像这样的 JSP:
<liferay-ui:panel-container extended="true">
<%=MyJavaClass.generatePanel() %>
</liferay-ui:panel-container>
和 Java 代码如下:
class MyJavaClass {
public static String generatePanel() {
String result="<liferay-ui:panel collapsible=\"false\" extended=\"true\" title=\"Some Title\">Some Content</liferay-ui:panel>";
return result;
}
}
Liferay 不会转换 <liferay-ui panel...>
.我猜这是因为它只在 执行 java 代码之前这样做,所以我没有得到任何面板。
有什么方法可以让 Liferay 在我生成面板后通过 JSP?还是我缺少更好的方法来做到这一点?
最佳答案
移动线<liferay-ui:panel collapsible=\"false\" extended=\"true\" title=\"Some Title\">Some Content</liferay-ui:panel>"
到位于 WEB-INF/tags/liferay-panel.tag
的 jsp 标签.
并将标记包含在所需的 jsp 中。
下面是相同的解决方案:
liferay-panel.tag
<liferay-ui:panel collapsible=\"false\" extended=\"true\" title=\"Some Title\">
Some Content
</liferay-ui:panel>
并包含这样的标签:
<%@taglib prefix="tags" tagdir="/WEB-INF/tags"% >
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<liferay-ui:panel-container extended="true">
<c:forEach var="i" begin="1" end="20" step="1">
<tags:liferay-panel/>
</c:forEach>
</liferay-ui:panel-container>
关于java - 在 JSP 中生成 liferay-ui 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11115317/