将树节点添加到Xpages扩展库手风琴控件

时间:2017-07-10 11:51:56

标签: xpages accordion xpages-ssjs treenode outline

我尝试将节点动态添加到Extension Library Accordion控件。整个想法是构建一个菜单,其中的选项从视图中获取(查看条目)。我从一个非常基本的逻辑开始,我从here得到了(感谢这个家伙Kraeven X BTW)。我声明了一个类型为accordion的变量,然后创建了一个BasicContainerNode和BasicLeafNode的新实例。一切正常,我能够将BasicLeafNode添加为BasicContainerNode的子项并为两者设置标签。 当我尝试使用addNode(ITreeNode节点)方法将新创建的节点(及其子节点)添加到我的手风琴控件时,问题就出现了。 页面崩溃时出现错误500(HTTP Web服务器:命令未处理异常)。

为什么addNode(ITreeNode节点)方法无法正常工作?我做错了什么???

这是我的afterPageLoad中的SSJS代码:

   try{

    var newContainer:com.ibm.xsp.extlib.tree.impl.BasicContainerTreeNode = new com.ibm.xsp.extlib.tree.impl.BasicContainerTreeNode();
    newContainer.setLabel("Dynamic Container Node");
    var newNode:com.ibm.xsp.extlib.tree.impl.BasicLeafTreeNode = new com.ibm.xsp.extlib.tree.impl.BasicLeafTreeNode();
    newNode.setHref("http://www.google.com");
    newNode.setLabel("Dynamic Basic Node");
    newContainer.addChild(newNode);
    var acc = getComponent("accordion1");
    acc.addNode(newContainer);
}catch(e){
    print(e.toString);
}

提前感谢您的帮助。

:)

1 个答案:

答案 0 :(得分:1)

您的代码效果很好。

在XPage上查找其他一些问题。激活“显示XPage运行时错误页面”或查看服务器上的日志文件以找出导致错误的原因。