Я использую Primefaces 3.1, JSF 2.1.6 на Glassfish 3.1.1.
У меня есть множество командных кнопок, которые работают нормально, но эта не работает, и я не могу понять, почему.Предупреждение javascript срабатывает, но метод контроллера никогда не вызывается.
Обратите внимание, что первая командная кнопка срабатывает отлично (кнопка «Фильтр»), но кнопка редактирования внутри таблицы данных не срабатывает.Вместо dataGrid я попробовал ui: repeat, но это дает тот же эффект / проблему.У меня есть много других таблиц данных с командными кнопками, но они все работают нормально ... странно.
<h:form id="memberships" prependId="false">
<h:panelGrid columns="3">
<h:outputLabel value="Filter on EPS" />
<p:selectOneMenu value="#{epsMembershipViewController.selectedEps}"
style="width:200px" effect="fold" editable="false" id="selectEps">
<f:selectItem itemLabel="Select One" itemValue="" />
<f:selectItems value="#{epsMembershipViewController.allEps}" />
</p:selectOneMenu>
<p:commandButton value="Filter"
action="#{epsMembershipViewController.repopulateView}" ajax="false" />
</h:panelGrid>
<br />
<p:dataGrid var="eps" value="#{epsMembershipViewController.ldapEpss}"
columns="1">
<h:outputLabel value="#{eps}"
style="font-weight: bold;font-size: 14px;" />
<p:dataTable var="ldapUser" id="id_#{eps}"
value="#{epsMembershipViewController.getUsersByEpsFromLdap(eps)}"
paginator="false" selectionMode="single" rowKey="#{ldapUser.name}"
rowStyleClass="#{ldapUser.expired == 'Yes' ? 'expired' : null}">
....... columns
<p:column style="width:20px">
<f:facet name="header">
<h:outputText value="" />
</f:facet>
<p:commandButton icon="ui-icon-extlink"
onclick="alert('this event does not work')" ajax="false"
action="#{epsMembershipViewController.edit()}" />
</p:column>
</p:dataTable>
<br />
<br />
</p:dataGrid>
</h:form>
Код компонента
public String edit(ActionEvent e) {
log.debug("EDIT USER 22222 ");
return "eps-search";
}
Спасибо за вашу помощь, Коэн