Как изменить значение вспомогательного компонента JSF перед UpdateModelValuesPhase? - PullRequest
1 голос
/ 30 декабря 2011

У меня есть форма JSF, которая состоит из сетки и некоторых подробных полей.Поля сведений содержат данные первой строки в сетке.У меня есть компонент поддержки, который слушает выбор строки сетки и обновляет компоненты поддержки полей сведений, чтобы представить новые значения.Возникает проблема: я обновляю поля сведений по мере необходимости (слушатель вызывается в ApplyRequestValuesPhase), но позже среда JSF пересылает им старые значения в UpdateModelValuesPhase.

Мой вопроскак это исправить?Как можно назначить новые значения некоторым компонентам JSF из события изменения выбора сетки?

Примечание: это примерно то же самое, что и в компонент JSF не обновляетсяесли изменения произошли из сетки, нажмите , но теперь я вижу проблему более ясно, поэтому я разместил новый вопрос.

1 Ответ

1 голос
/ 30 декабря 2011

Не нормально, что слушатель вызывается во время фазы применения значений запроса. Возможно, вы установили immediate="true" где-нибудь, что приведет к выполнению действий на этапе применения значений запроса. Необходимо убедиться, что слушатель вызывается во время фазы действия invoke, которая запускается сразу после фазы обновления значений модели. Установите immediate="false" или просто полностью удалите атрибут, это уже стандартное поведение.

Что касается комментариев, вы, кажется, действительно установили immediate="true" в селекторе строк , вам нужно удалить его.

...