Как выполнить ajax-поиск на экране редактирования в раскрывающемся списке Wicket с помощью Hibernate? - PullRequest
0 голосов
/ 31 мая 2011

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

класс А { Значение B }

класс B { }

Отношение между ними отображается в двух направлениях в Hibernate, поэтому я использую b.getListOfA (), чтобы получить все ссылки A на B, и наоборот.

У меня есть приложение Wicket, у которого есть экран редактирования для редактирования класса А. Этот экран инициализируется из DataTable с моделью, которую дает DataRowProvider (это LoadableDetachableModel). Когда я не использую ajax, я могу получить превосходный выпадающий список (стандартный компонент калитки), который я заполняю, запрашивая все буквы B.

Теперь я пытаюсь сделать DropDownChoice AutoCompleteTextBox. Все отлично работает, я могу выбрать B, и он правильно заполнен, установлен в модели A.

Но когда я пытаюсь сохранить отредактированный экземпляр A, я получаю исключение гибернации:

org.hibernate.NonUniqueObjectException: другой объект с тем же значением идентификатора уже был связан с сеансом

Я использую фильтр OpenSessionInView из Spring и метод saveOrUpdate для сохранения своих объектов.

Есть намеки? Улики? Советы по отладке?

...