Я застрял с проблемой, которая не имеет никакого смысла для меня. У меня есть список, который запускает selectionChange-Events с простым Ajax. Идея состоит в том, что кнопка редактирования не активна, пока не выбран элемент в списке. Поэтому я создал следующий код.
<h:form>
<h:selectManyListbox value="#{bean.selectedIds}">
<f:selectItems value="#{bean.listOfItems}" />
<f:ajax render="edit"
listener="#{bean.selectionChanged}" />
</h:selectManyListbox>
<br />
<h:commandButton id="add" value="#{msgs.add}"
action="#{bean.addNew}" />
<h:commandButton id="edit" value="#{msgs.edit}"
disabled="#{bean.editButtonDisabled}"
action="#{bean.edit}" />
</h:form>
Кнопка включена и отключена, как я хочу, но, как оказалось, кнопка редактирования не запускает никаких действий (я добавил sysout к методу add- и edit в bean-компоненте, а метод edit никогда не вызывался ) ... вместо этого HTML меняется. Приведенный выше код вложен в простой div. Когда я нажимаю «изменить», вся форма находится за пределами этого div.
Когда я добавляю это ajax-поведение к кнопке добавления, там происходит то же самое, и наоборот, когда я удаляю отключенный атрибут с кнопки редактирования, все работает ???
Я уже посмотрел ответ BalusC здесь , но не смог найти ни одной ошибки, связанной с этим списком. Нет вложенных форм и так далее ... это просто простая страница с шаблоном.
Я использую Mojarra 2.1.2 на JBoss 7.1.Final.
Любая помощь приветствуется. Спасибо