I'm using ice:menuPopup to create menus on tree nodes. In jspx page I've something like this
<ice:tree id="tree" value="#{tree.model}" var="item" imageDir="./xmlhttp/css/xp
/css-images/">
<ice:treeNode>
<f:facet name="icon">
<ice:panelGroup style="display: inline">
<h:graphicImage value="#{item.userObject.icon}"/>
</ice:panelGroup>
</f:facet>
<f:facet name="content">
<ice:panelGroup style="display: inline" menuPopup="menuPopupEffects">
<ice:commandLink actionListener="#{tree.Url}" value="#
{i开发者_C百科tem.userObject.text}"/>
</ice:panelGroup>
</f:facet>
<ice:menuPopup id="menuPopupEffects">
<ice:menuItem value="Open" actionListener="#{tree.NodeValue}">
<f:param name="effectType" value="Open"/>
</ice:menuItem>
<ice:menuItem value="Close">
<f:param name="effectType" value="Close"/>
</ice:menuItem>
<ice:menuItem value="Send">
<f:param name="effectType" value="Send"/>
</ice:menuItem>
</ice:menuPopup>
</ice:treeNode>
The problem is that the actionListener="#{tree.NodeValue}" never gets called. Can any one tell me Where I'm wrong?
Try to move ice:menuPopup..../ice:menuPopup that block up, insert that block into the line just below:
ice:commandLink actionListener="#{tree.Url}" value="#
{item.userObject.text}"
Thus they in the same panelGroup. It works for me this way, but I am still use icefaces 1.8.
精彩评论