У меня есть дерево простых лиц с кнопкой и выходным текстом в treenode. Ajax строка выбора события вызывает рендеринг кнопки. Кнопка имеет простое меню, которое должно появляться при нажатии кнопки. Проблема в том, что нажатие кнопки вызывает событие выбора строки, и кнопка перерисовывается, и меню исчезает.
<p:tree id="tree1" value="#{treeDNDView.root1}" var="node" selectionMode="single"
selection="#{treeDNDView.selectedNode1}">
<p:ajax event="select" update=" mainform:tree1"/>
<p:treeNode>
<h:panelGrid columns="3" columnClasses="width-5pct,verticalLine,width-95pct">
<p:outputPanel>
<p:commandButton id="dynaButton" value="Show" rendered="#{treeDNDView.selectedNode1.data eq node}" type="button"/>
<p:tieredMenu id="treeNodePanel" overlay="true" trigger="dynaButton" my="left top" at="left bottom">
<p:menuitem value="Save" action="#{menuView.save}"/>
</p:tieredMenu>
</p:outputPanel>
<p:spacer width="5px"/>
<p:outputPanel>
<h:outputText value="#{node}" escape="false"/>
</p:outputPanel>
</h:panelGrid>
</p:treeNode>
</p:tree>
Как разделить нажатие кнопки и выбрать ряд событий в этом случае? Как переписать код, чтобы функционал успешно работал?