Хранение значений inputText при «прыжке» с одного контроллера на другой - PullRequest
1 голос
/ 19 сентября 2011

У меня есть следующая маска / вид:

input mask

После ввода имени и описания я могу добавить список существующих атрибутов, нажав кнопку «Добавить существующий».Это открывает другую маску / представление, где я могу выбрать из списка существующих атрибутов.У этой (новой) маски / вида есть свой собственный контроллер и модель.

Когда я закончу выделение, у меня есть еще одна кнопка, которая возвращает меня к этой маске.

Проблемав том, что когда я возвращаюсь, поля имени и описания пусты.Это происходит потому, что когда я нажимаю «Добавить существующую кнопку», контроллер / модель этой маски не вызывается и значения не сохраняются.

Как этого избежать и сохранить значения?

Спасибо за любую помощь, Франческо

Ответы [ 2 ]

1 голос
/ 20 сентября 2011

Это работает, только если новый вид находится внутри того же вида.Например, когда это диалоговое окно наложения, которое представлено скрытым <div>, а не простым всплывающим окном window.open().Таким образом, бины будут иметь доступ друг к другу, и вы сможете выполнять обновления ajax вместо отправки / обновления всей страницы.

Это довольно сложно для homegrow, если вы не очень хорошо знакомы с HTML /CSS / JS.Я предлагаю взглянуть на библиотеку компонентов, которая предлагает такой компонент, как RichFaces '<rich:popupPanel> и PrimeFaces' <p:dialog>.

0 голосов
/ 20 сентября 2011

Вы можете хранить данные в сеансе или в компоненте разговора.Подход сессионного компонента имеет огромный недостаток, когда пользователь работает с несколькими вкладками / окнами - он использует только один сессионный компонент, поэтому он переписывает то, что делал в других окнах.Но область разговора была не в javaEE 5, а в CDI (часть EE6).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...