Обновление реестра GXT

Я думаю, что есть что-то, что я не совсем понимаю в отношении реестра.

У меня есть приложение. с 3 разными вкладками. Чтобы добавить строку в сетку на вкладке №3, вам нужно «выбрать» строку в сетке на вкладках №1 и №2. Когда вы выбираете строку на вкладках № 1 и № 2, я сохраняю «ID» строки и получаю объект «sessionInfo» в реестре (просто объект с кучей java.Strings в нем).

Если я сначала перехожу на вкладку № 3 (без выбора строки сетки из № 1 и № 2), я получаю сообщение об ошибке при попытке добавить строку (что было бы правильно, поскольку ничего не выбрано в № 1 и № 2). Затем я возвращаюсь к вкладкам № 1 и № 2, выбираю строку сетки из каждой (которая обновляет объект «sessionInfo» в реестре). Затем я возвращаюсь к #3 и пытаюсь добавить строку, но "sessionInfo" кажется не обновленной?!? (т.е. выбранные строки все еще пусты)

Проверка переменной сеанса выполняется в закрытом методе (вне метода onRender()), вызываемом из метода SelectionListener.componentSelected() кнопки «Добавить».

~r

PS: я подозреваю, что это связано с тем, что реестр является переменной экземпляра в классе Tab # 3?!?

PPS: я также обновляю виджет gxt.ui.client.widget.Status. Когда я получаю это (также из реестра), он обновляется?!?!

PPPS: Пожалуйста, не указывайте мне на ветку под названием «Плюсы и минусы реестра». Приятно сказать, что не используйте реестр, а затем не предлагать никакой альтернативы, кроме как «что-то не так с вашим приложением». ( ясно однако, не очень полезно.


person rfh    schedule 12.04.2012    source источник


Ответы (1)


Вы все еще можете создать какой-то реестр, используя свой собственный класс на основе hashMap для хранения общих данных, которые вам могут понадобиться в другом месте. Я использую не Gxt, а SmartGwt, и вы можете посмотреть здесь возможно, это поможет.

person Alain BUFERNE    schedule 15.04.2012