@苦咖啡
try {
javax.naming.Context ctx = new javax.naming.InitialContext();
NavigationModelHome psh = (NavigationModelHome)ctx.lookup("portal:service/model/NavigationSelectionModel");
NavigationModelProvider provider = psh.getNavigationModelProvider();
NavigationModel model = provider.getNavigationModel((ServletRequest)request, (ServletResponse)response);
NavigationNode homeNode = null;
for (java.util.Iterator i = model.getChildren((NavigationNode) model.getRoot()); i.hasNext(); )
{
NavigationNode node = (NavigationNode) i.next();
if (i.hasNext()) {
if("ibm.portal.Home".equals(node.getObjectID().getUniqueName())) //判断是否为主页,此ID唯一。
homeNode = node;
break;
}
}
for (java.util.Iterator i = model.getChildren(homeNode); i.hasNext(); ) //遍历主页下的一级菜单
{
NavigationNode level1node = (NavigationNode) i.next();
String id1 = level1node.getObjectID().getUniqueName();
String title1 = level1node.getTitle(Locale.CHINESE);
System.out.println("id1=="+id1+"===title1==="+title1);
for(Iterator level2nodes = model.getChildren(level1node);level2nodes.hasNext();){ //找到第一个二级菜单
NavigationNode node = (NavigationNode) level2nodes.next();
String id2 = node.getObjectID().getUniqueName();
String title2 = node.getTitle(Locale.CHINESE);
System.out.println("id2=="+id2+"===title2==="+title2);
}
}
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}