#hibernate #seam
#спящий режим #seam
Вопрос:
У меня есть два объекта с отношением один к одному, а именно Customer и CustomerDetails, отображенные в их конкретных таблицах.
У меня есть форма на странице, которая фиксирует каждое значение для свойства каждой сущности.
Как я собираюсь сохранить это в SEAM? поскольку моя командная кнопка указывает только на один метод действия, который CustomerHome.persist()
Что я сделал, так это присвоил значение в моей форме свойству CustomerDetails, например
value="#{customerHome.intance.customerDetails.address}"
но я получаю сообщение об ошибке, что customerDetails принимает значение null.
другой рабочий процесс заключается в том, чтобы иметь два метода persist в моем методе CustomerHome persist, которые сохраняют обе сущности, но я получаю еще одну ошибку, что идентификатор CustomerDetails должен быть назначен первым перед вызовом для сохранения.
Есть ли кто-нибудь, кто может прояснить это для меня? Я совершенно новый SEAM.
Ответ №1:
Используете ли вы seam-gen?
Попробуйте посмотреть на проект, созданный seam-gen
Они используют метод «wire» для инициализации отношений.
В основном при создании вашего экземпляра вы убедитесь, что все отношения указывают на соответствующие объекты fooHome.instance.
Затем в вашем методе persist вы сначала вызываете метод persist EntityHome отношения.
Комментарии:
1. нет, я не использовал seam gen, я вручную запустил проект из Jboss Dev studio. Я попытаюсь исследовать провод, который вы сказали. Спасибо .. ^^
2. я решаю свою проблему .. спасибо за вашу помощь. это проводной метод.:)
Ответ №2:
Если вы скопировали этот код непосредственно из своей IDE, то опечатка, вероятно, является причиной ваших проблем:
value="#{customerHome.intance.customerDetails.address}"
должно быть
value="#{customerHome.instance.customerDetails.address}"
Комментарии:
1. на самом деле проблема в том, что я получаю разрешение объекта на null при ссылке на дочерний объект entity..no ошибки опечатки.:)