Return-Path: Delivered-To: apmail-myfaces-users-archive@www.apache.org Received: (qmail 42048 invoked from network); 12 Sep 2007 22:10:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 12 Sep 2007 22:10:42 -0000 Received: (qmail 5797 invoked by uid 500); 12 Sep 2007 22:10:32 -0000 Delivered-To: apmail-myfaces-users-archive@myfaces.apache.org Received: (qmail 5756 invoked by uid 500); 12 Sep 2007 22:10:31 -0000 Mailing-List: contact users-help@myfaces.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "MyFaces Discussion" Delivered-To: mailing list users@myfaces.apache.org Received: (qmail 5745 invoked by uid 99); 12 Sep 2007 22:10:31 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Sep 2007 15:10:31 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of andrew.rw.robinson@gmail.com designates 64.233.166.182 as permitted sender) Received: from [64.233.166.182] (HELO py-out-1112.google.com) (64.233.166.182) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Sep 2007 22:10:30 +0000 Received: by py-out-1112.google.com with SMTP id u77so741580pyb for ; Wed, 12 Sep 2007 15:10:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; bh=9m2FOOinQiuyKIzqSQNqa60XIzsd3KGVRe5gEMjTUr0=; b=PrJfAhiOo48hWduAeaqB0x9ue62QeMJCGs67y+MjRCdWVLKgvMNyU9zTBqOUPbXgOeoSLxBgqcKX8xugUdrU97ZCKMNupXg1P4odmAzbGA9jzlg1YmDyp8mFNDHDzSoa7TNi0PWhZqS04r6+1s8xF2q6qiX+A61iLRiNLABPRx8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=EYF2pl8UrY4k0MH6dKLEzEsCjt/Fi4F2swBIfy6gD+q1mJ96XdtBrn2KN3bnddM4Ct7aa4PS2rV53l9alIDKCgS76YHd/C+pAsuoWJPJCKc4cUtgRup6i6dlcTNwTt0MOv69+37DJHajoOy8af3ebWGytPly1lM0Bi+7TVIzDVk= Received: by 10.35.117.5 with SMTP id u5mr11858pym.1189635008997; Wed, 12 Sep 2007 15:10:08 -0700 (PDT) Received: by 10.35.52.13 with HTTP; Wed, 12 Sep 2007 15:10:08 -0700 (PDT) Message-ID: Date: Wed, 12 Sep 2007 16:10:08 -0600 From: "Andrew Robinson" To: "MyFaces Discussion" Subject: [Trinidad] Exception with XMLMenuModel usage MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Virus-Checked: Checked by ClamAV on apache.org I have 2 controls backed by an XmlMenuModel, a main menu and a help context menu. When I only had one menu, my code was working. When I introduced the 2nd model, I started getting this exception: java.lang.NullPointerException at org.apache.myfaces.trinidad.model.XMLMenuModel.getFocusRowKey(XMLMenuModel.java:292) at org.apache.myfaces.trinidad.component.UIXNavigationHierarchy.getFocusRowKey(UIXNavigationHierarchy.java:79) at org.apache.myfaces.trinidad.component.HierarchyUtils.__handleEncodeBegin(HierarchyUtils.java:88) at org.apache.myfaces.trinidad.component.UIXNavigationTree.__encodeBegin(UIXNavigationTree.java:153) at org.apache.myfaces.trinidad.component.UIXCollection.encodeBegin(UIXCollection.java:515) at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChild(RendererUtils.java:435) at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChildren(RendererUtils.java:423) at org.apache.myfaces.custom.roundeddiv.HtmlRoundedDivRenderer.encodeChildren(HtmlRoundedDivRenderer.java:319) at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:527) at org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode._renderComponent(UIComponentUINode.java:320) at org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode.render(UIComponentUINode.java:279) at org.apache.myfaces.trinidadinternal.uinode.UIComponentUINode.render(UIComponentUINode.java:256) at org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderChild(BaseRenderer.java:425) at org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:343) at org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderIndexedChild(BaseRenderer.java:235) at org.apache.myfaces.trinidadinternal.ui.BaseRenderer.renderContent(BaseRenderer.java:142) at org.apache.myfaces.trinidadinternal.ui.laf.base.desktop.PanelTabbedRenderer.renderContent(PanelTabbedRenderer.java:112) at org.apache.myfaces.trinidadinternal.ui.BaseRenderer.render(BaseRenderer.java:93) at org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.XhtmlLafRenderer.render(XhtmlLafRenderer.java:84) at org.apache.myfaces.trinidadinternal.uinode.UIXComponentUINode.renderInternal(UIXComponentUINode.java:192) at org.apache.myfaces.trinidadinternal.uinode.UINodeRendererBase.encodeEnd(UINodeRendererBase.java:70) at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:710) faces-config.xml: mainMenuModel org.apache.myfaces.trinidad.model.XMLMenuModel application source /WEB-INF/mainMenu.xml helpContextMenuModel org.apache.myfaces.trinidad.model.XMLMenuModel application source /WEB-INF/helpContents.xml The problem seems to be a result of: if (this == _getRootModel()) { _viewIdFocusPathMap = _contentHandler.getViewIdFocusPathMap(_mdSource); _nodeFocusPathMap = _contentHandler.getNodeFocusPathMap(_mdSource); _idNodeMap = _contentHandler.getIdNodeMap(_mdSource); } For the 2nd component, the "if" evaluates to false, so the three member variables are null, and the exception is because _viewIdFocusPathMap is null. Am I doing something wrong or is this a bug in 1.0.3-SNAPSHOT? Usage of main menu Usage of contents model: -Andrew