Gwt 如何从portlet访问liferay菜单 我在navigation.vm文件中定义了一个菜单,它在liferay项目中运行良好 但是我想从我的portlet访问这个菜单 是否有任何方法可以从portlet入口点或view.jsp访问菜单

Gwt 如何从portlet访问liferay菜单 我在navigation.vm文件中定义了一个菜单,它在liferay项目中运行良好 但是我想从我的portlet访问这个菜单 是否有任何方法可以从portlet入口点或view.jsp访问菜单,gwt,liferay,portlet,liferay-6,Gwt,Liferay,Portlet,Liferay 6,导入liferay uitaglib: <%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui" %> 然后你可以用 <liferay-ui:navigation displayStyle="from-level-0" > </liferay-ui:navigation> 注意:设置displayStyle=“from-level-0”为您提供像在navigation.vm上一样的

导入
liferay ui
taglib:

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

然后你可以用

<liferay-ui:navigation displayStyle="from-level-0" >
</liferay-ui:navigation>

注意:设置
displayStyle=“from-level-0”
为您提供像在
navigation.vm
上一样的正常行为,您可以以不同的方式处理属性以获得其他行为。

这描述了直接在jsp中获取菜单项的方法

以下代码直接从上面的链接复制,格式有所改进:

<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>

<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="com.liferay.portal.model.Layout"%>
<%@ page import="com.liferay.portal.kernel.util.WebKeys"%>
<%@ page import="com.liferay.portal.theme.NavItem" %>
<%@ page import="com.liferay.portal.theme.RequestVars" %>
<%@ page import="com.liferay.portal.theme.ThemeDisplay"%>

<portlet:defineObjects />

<liferay-theme:defineObjects />

<div style="width:100%">
<%
//ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

String title = themeDisplay.getLayout().getName(themeDisplay.getLocale());

List<NavItem> navItems = new ArrayList<NavItem>();

if (layout != null) {
    RequestVars requestVars = new RequestVars(request, themeDisplay, layout.getAncestorPlid(), layout.getAncestorLayoutId()); 
    navItems = NavItem.fromLayouts(requestVars, layouts);
}

for (NavItem navItem : navItems) {
    if (navItem.getName().equalsIgnoreCase(title)) {
        if (navItem.hasChildren()) {

            for(NavItem navChild : navItem.getChildren()) {
%>

    <div style="float:left;" class="newsMenuPortlet">
        <a href="<%= navChild.getURL() %>" <%=navChild.getTarget() %>>
            <%= navChild.getName() %>
        </a>
    </div>

<%
            } // inner for-loop ends here
        }
    }
}// outer for-loop ends here
%>

</div>

我获得了所有菜单和子菜单,但我如何获得图标。Like:navClind.icon();