0

我真的在为此苦苦挣扎,我似乎无法做到这一点。

我有一个 Liferay portlet,我一直试图将它放在自定义类别中,但它一直将它放在“未定义”类别中。我已经用硬编码设置了我的 liferay-display.xml 以进行测试,但它仍然没有这样做。注意我使用 maven 而不是 ant 来构建和依赖。portlet 工作正常,只是不在我想要的类别中。构建后,liferay-display.xml 位于 WEB-INF 文件夹中(我相信这是它的本意所在)。以下是该文件的示例。

<?xml version="1.0"?>
<!DOCTYPE display PUBLIC "-//Liferay//DTD Display 6.1.0//EN" "http://www.liferay.com/dtd/liferay-display_6_1_0.dtd">

<display>
    <category name="Hello">
        <portlet id="Hello Portlet"></portlet>
    </category>
</display>

任何帮助将不胜感激。如果我错过了任何明智的信息,请告诉我。

4

1 回答 1

1

portlet id 必须是您在 portlet.xml 中提供的 id - 我不确定您是否可以提供任何带有空格的内容,但以下 portlet.xml 和 liferay-display.xml 会匹配:

portlet.xml

<portlet-app xmlns="http://java.sun.com/xml/ns/p...." version="2.0">
    <portlet>
        <portlet-name>helloPortlet</portlet-name>
        <display-name>Hello Portlet</display-name>
    ...

和 liferay-display.xml

<?xml version="1.0"?>
<!DOCTYPE display PUBLIC "-//Liferay//DTD Display 6.1.0//EN" "http://www...">

<display>
    <category name="Hello">
        <portlet id="helloPortlet"></portlet>
    </category>
</display>

例如portlet-name,在liferay-display.xml 中使用portlet.xml 中的元素作为portlet id。

于 2013-06-20T18:51:27.197 回答