Создание объекта из Hibernate Mapping - PullRequest
0 голосов
/ 13 июля 2009

Если у меня есть такое отображение:

<class name="Users" table="users">
    <id column="id" name="id">
        <generator class="native"/>
    </id>
    ...
    <set name="types" table="types" cascade="all">
        <key column="user_id" />
        <element column="type_name" type="string" />
    </set>
</class>

Как должен быть создан объект пользователя? Я сделал это:

User u = new User();
u.getType().add(new Type(type_name));
getHibernateTemplate().save(u);

Но будет ошибка java.lang.ClassCastException: Type. Класс Type содержит только целое число user_id и строку type_name с get / set.

Почему это не работает? Где найти документацию по сохранению объектов с коллекцией элементов? Большое вам спасибо.

1 Ответ

2 голосов
/ 13 июля 2009

Посмотрите на http://docs.jboss.org/hibernate/stable/core/reference/en/html/collections.html.

Измените элемент на:

<element column="type_name" type="Type" />

Затем вы можете добавить типы в набор. Прямо сейчас вы определили это как String.

...