1
我試圖將節點動態添加到擴展庫Accordion控件。整個想法是建立一個菜單,其選項是從視圖中提取的(查看條目)。我從here得到的一個非常基本的邏輯開始(感謝這個傢伙Kraeven X BTW)。我聲明瞭一個類型爲accordion的變量,然後創建了一個BasicContainerNode和BasicLeafNode的新實例。一切正常,我能夠將BasicLeafNode添加爲BasicContainerNode的子節點,併爲兩者設置標籤。 當我嘗試使用addNode(ITreeNode節點)方法將新創建的節點(及其子節點)添加到我的手風琴控件時,問題就開始了。 頁面崩潰,出現錯誤500(HTTP Web服務器:命令未處理異常)。將樹節點添加到Xpages擴展庫Accordion控件
任何想法爲什麼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);
}
預先感謝任何幫助。
:)
嗨克努特,謝謝你回覆並給我這樣的提示,對不起,我忘了提及我在本地運行應用程序並使用網絡預覽。但是,我可以激活「顯示XPage運行時錯誤頁面」,並查看我的IBM技術支持文件夾中的日誌文件。這是我得到的: **頁面名稱:/testmenu.xsp java.lang.ClassCastException:com.ibm.xsp.extlib.tree.impl.BasicContainerTreeNode與javax.faces.component.StateHolder **不兼容 –