![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
3,14 |
|
||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
ivg, нет, там что то не то, и совсем не понятное. Вот так работает (кусок из getConfigList):
Вот так не работает:
Причём в обоих случаях bean создаётся, и создатся ровно один bean. В обоих случаях select-ы отображаются, но при первом варианте данные передаются на сервер (кусок лога):
а во втором нет
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
||||||||
|
|||||||||
ivg |
|
|||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 32 Всего: 81 |
Тогда вот с этим вариантом вопрос остаётся. В процессе обработки запроса метод getConfigList() вызывается несколько раз на разных фазах и каждый раз идёт обращение к БД. Проверьте под отладчиком, например, что каждый раз возвращаются одни и те же данные. А вообще если у вас bean request scope, может имеет смысл в бине хранить List<BoxBean> boxes, а не ходить в БД каждый раз. |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Действиетльно метож вызывается 2 раза, с первым всё понятно, он вызывается при создании таблицы. Там всё отрабатывает правильно. Но зачем он вызывается второй раз, при нажатии кнопки save (там то как раз configId не выставляется). Формы, на к-ой выводятся select-ы, после нажатия save уже не отображается. Да и configBean там уже другой используется, список в классе не сохранишь :(
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
ivg |
|
||||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 32 Всего: 81 |
По идее, должен больше. В процессе обработки одного запроса почти на каждой фазе, а их там штук 6, если мне память не изменяет.
Кстати говоря, это уже другой запрос, и следовательно объекты reques scope бинов тоже уже другие. А вызывается он каждый раз, потому что JSF не хранит данные, она работает только с информацией о биндинге (Что то типа ссылки на значение) т. е. value="#{boxBean.configList}", и каждый раз когда данные необходимы этот биндинг резолвится. (Ссори за корявое выражение, лучше не придумал ![]() Ну вобщем проблема ясна. Сложно предложить какое то решение, ибо специфика не известна. Как насчёт, вынести переменную configId в session scope? Ну и
а данные получать при первом вызове (lazy loading). Это сообщение отредактировал(а) ivg - 17.3.2008, 13:19 |
||||
|
|||||
3,14 |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Не помогло :( Сделал срок жизни boxBean-у: session, список сделал членом класса. Один фиг, когда запрашивает configList второй раз, список оказывается пустым:
Вот что вывалилось в лог:
Список, кроме как в этой ф-ии, нигде больше не изменяется. -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
||||
|
|||||
ivg |
|
|||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 32 Всего: 81 |
Уверены? Добавьте в начало метода
Если значения будут разные при обоих вызовах, значит объекты бинов тоже разные. Тогда этим и объясняется, почему при втором вызове метода поле boxes == null. Вот ещё, кстати, я кажется понял, почему всего два раза этот метод вызывается. У вас на кнопке save установлен атрибут immediate="true" и action="...", который перенаправляет на другую страницу? Уберите immediate="true". Потому что иначе обработка запроса не дойдёт до фазы UPDATE_MODEL_VALUES, в которой значения в интересующей нас Map<...> и обновляются. |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Объекты бинов разные, но почему не понятно :( Как же там сохранять список, если метод вызывается для разных объектов...
![]() Кнопку save изменил:
Тоже не помогло... ![]() -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
ivg |
|
|||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 32 Всего: 81 |
||||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
faces-config.xml:
контейнер: jboss-4.2.0.GA куки включенны. -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
с tomcat 6 та же проблема.
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
ivg |
|
|||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 32 Всего: 81 |
Даа, интересно... Что ж с сессиями то... Как я понимаю, это вроде единственная нерешённая проблема?
Может вы выложите проект? А то что то ходим всё вокруг да около.... Ну или хотя бы покажите код класса com.nortelnetworks.beans.config.BoxBean, web.xml, context.xml (если есть), ну и какие там у вас конфиги... Версия JSF? Чья имплементация? PS: В List<BoxBean> boxes класс BoxBean это то же самое что и com.nortelnetworks.beans.config.BoxBean? |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Да Прикрепил к сообщению, вырезал только jar-ы, и файлы БД чтоб архив меньше места занимал. Библиотеки для JSF идут вместе с jboss. jsf-api.jar Specification-Version: 1.2MR1 Implementation-Vendor-Id: com.sun Extension-Name: javax.faces Implementation-Version: 1.2_04-b10-p01 Implementation-Vendor: Sun Microsystems, Inc. jsf-impl.jar Specification-Version: 1.2MR1 Implementation-Vendor-Id: com.sun Extension-Name: com.sun.faces Implementation-Version: 1.2_04-b10-p01 Implementation-Vendor: Sun Microsystems, Inc. jboss-faces.jar Specification-Version: 4.2.0.GA Implementation-Vendor-Id: http://www.jboss.org/ Implementation-Version: 4.2.0.GA (build: SVNTag=JBoss_4_2_0_GA date=20 0705111440) Implementation-Vendor: JBoss Inc. Ещё используется (не jboss-кий jar, включаю в приложение): jsf-facelets Created-By: 1.5.0_09-b03 (Sun Microsystems Inc.) Implementation-Version: 1.1.13
Да Присоединённый файл ( Кол-во скачиваний: 5 ) ![]() -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Разобрался. Хотя bean scope я обьявил как session, но этот bean у меня добавлялся ручками,а не создавался автоматом. И я просто забыл поменять, чтоб он добавился в Map сессии, а не запроса.
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
Fedrus |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 20.9.2007 Репутация: нет Всего: нет |
Предлагаю вам написать статью-урок и разместь здесь на форуме очь полезно будет))
(ну если конечьно не лень) --------------------
Если вы идете через ад, идите не останавливаясь. |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
Fedrus, где нить через неделю-другую, как времени больше свободного будет.
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |