Предполагая, что bean-компонент находится в области видимости, просто установите его как direclty свойства bean-компонента в методе действия командной кнопки в столбце данных.
<h:form>
<p:dataTable var="form" value="#{myBean.formList}">
<p:column>
<p:commandButton id="selectProduct"
action="#{myBean.setCurrentForm(form)}"
update="selectProductForm" oncomplete="selectProductDlg.show()"
image="ui-icon-">
</p:commandButton>
</p:column>
</p:dataTable>
</h:form>
<p:dialog>
<h:form>
<p:commandButton action="#{myBean.setSelected}"
update="main_form"
oncomplete="if(#{myBean.errorText == 'SUCCESS'}){ selectProductDlg.hide();}"
value="Sec">
</p:commandButton>
</h:form>
</p:dialog>
Если у вас есть кнопка отменыдиалоговое окно, вы должны позволить его методу действия установить его на null
.
Нет необходимости возиться с необработанными параметрами HTTP-запроса в запросах POST.<f:param>
следует максимально использовать только в запросах GET (например, <h:link>
, <h:button>
и т. Д.).