Я пытаюсь отобразить новое диалоговое окно с формой оплаты картой. Он будет отображаться (rendered = true) после нажатия кнопки. Проблема в том, что selectOneMenu не заполняется. Если я закрою диалоговое окно и открою его снова, это будет работать. Я знаю, что в начале DOM не обнаруживает диалог, поэтому методы, которые заполняют меню, не вызываются. Есть ли способ заполнить выпадающий список? Я пытался использовать свойство AJAX, обновленную форму и т. Д.
Код для открытия формы:
<p:panel styleClass="commandButtons">
<p:commandButton
id="newCard"
value="#{msg.global_payWithNewCard}"
immediate="true"
action="#{cardPaymentDialogManager.toggleNewCard}"
rendered="#{!cardPaymentDialogManager.newCard}"
icon="ui-icon-plus"
update="@form"/>
</p:panel>
Выберите меню:
<p:selectOneMenu
id="newCardExpirationMonth"
value="#{cardPaymentDialogManager.cardPaymentViewModel.expirationMonth}"
style="width: 107px; margin-right: 10px;">
<f:selectItem
itemLabel="#{msg.global_month}"
noSelectionOption="true" />
<f:selectItems value="#{cardPaymentDialogManager.expirationMonth}" />
</p:selectOneMenu>