We are not using facelets, we are using standalone tiles for our templating, and are not using tapesty-like views.
JB -----Original Message----- From: Günther, Thorsten [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 17, 2006 9:19 AM To: [email protected] Subject: AW: Node Stamp Facet, af:commandNavigationItem rendered attribute, and boolean operators > I can successfully evaluate one call to the node i.e. > #{navItem.rendered} That's strange. Do you use Facelets? I do. > I don't have the option of using the menu model, because the rendered > tag > really is based on values for each node. Each node has > completely different criteria to judge whether or not it should be > rendered. It is interesting Same for me. Use something like this from inside MenuModelAdapter (taken from Trinidad demo) to access the current navItem from the menueModel: public boolean isRendered() { boolean b = true; if (_model != null) { if (_model.isRowAvailable()) { NavigationItem ni = (NavigationItem) _model.getRowData(); if (ni != null) { b = ni.isRendered(); } } } return b; } But since you are able to access your navItem's isRendered() directly you don't need this of course. :-| Regards, Thorsten -----Ursprüngliche Nachricht----- Von: Baker,Jonathan [mailto:[EMAIL PROTECTED] Gesendet: Dienstag, 17. Oktober 2006 14:59 An: [email protected] Betreff: RE: Node Stamp Facet, af:commandNavigationItem rendered attribute, and boolean operators Interesting... I can successfully evaluate one call to the node i.e. #{navItem.rendered} The problem is trying to and two node calls in the same expression i.e. #{navItem.rendered && navItem.authorized} I don't have the option of using the menu model, because the rendered tag really is based on values for each node. Each node has completely different criteria to judge whether or not it should be rendered. It is interesting that in your example you only had one node call, but it was somehow unsuccessful. JB -----Original Message----- From: Günther, Thorsten [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 17, 2006 4:52 AM To: [email protected] Subject: AW: Node Stamp Facet, af:commandNavigationItem rendered attribute, and boolean operators Hi Jonathan! I have the same problem here. In my experience any kind of request in rendered against the "node" evaluates to false. Requests against the menuModel work like expected. So <tr:page var="node" value="#{menuModel.model}"> <f:facet name="nodeStamp"> <tr:commandNavigationItem text="#{node.label}" action="#{node.getOutcome}" immediate="true" rendered="#{menuModel.rendered and menuModel.everTrue}" /> </f:facet> is ok, but <tr:page var="node" value="#{menuModel.model}"> <f:facet name="nodeStamp"> <tr:commandNavigationItem text="#{node.label}" action="#{node.getOutcome}" immediate="true" rendered="#{node.everTrue}" /> </f:facet> evaluates to false. I also worked around this via the menuModel. At the time where I encountered this I thought this would be because me getting something wrong. So I did not look in this issue any further and did not report it, what I do regret now. Regards, Thorsten -----Ursprüngliche Nachricht----- Von: Baker,Jonathan [mailto:[EMAIL PROTECTED] Gesendet: Montag, 16. Oktober 2006 23:15 An: [email protected] Betreff: Node Stamp Facet, af:commandNavigationItem rendered attribute, and boolean operators I am using the af:page component. Inside of the NodeStamp facet I am referencing a af:commandNavigationItem with a rendered attribute. Inside of the rendered attribute I am calling two methods on the same backing bean and ANDing them together. For some reason this makes my navigation hierarchy disappear. If the rendered attribute looks like this #{navItem.rendered} it works correctly If the rendered attribute looks like this #{navItem.authorized} it works correctly If the rendered attribute looks like this #{navItem.rendered && navItem.authorized} then nothing is rendered even though both values = true. I have used the same combination outside of the node stamp facet and the components are rendered correctly, so it is somehow related to how the nodestamp facet of the page component is rendered. As a work-around I have created a method in my backing bean that performs the anding of the two methods, so that is not a problem, I just preferred to have these two methods separated as they stand for two different sets of criteria. JB
