2016-05-19 3 views
0

Мне нужна помощь, я пытаюсь использовать карту, но я получил эту ошибку:org.hibernate.MappingException: Не удалось определить тип для: java.util.List, за таблицей: Schedule_assignedRoles, для столбцов: assignRoles

Caused by: org.hibernate.MappingException: Could not determine type for: java.util.List, at table: Schedule_assignedRoles, for columns: [org.hibernate.mapping.Column(assignedRoles)] at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:390) at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:363) at org.hibernate.mapping.Collection.validate(Collection.java:310) at org.hibernate.mapping.IndexedCollection.validate(IndexedCollection.java:74) at org.hibernate.boot.internal.MetadataImpl.validate(MetadataImpl.java:333) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:443) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:802)

вот мой код:

@Entity 
public class Schedule extends PersistentObject implements Comparable<Schedule> { 
    private String title; 

    @ManyToOne 
    private Agent target; 

    @ElementCollection 
    @MapKeyColumn(nullable = false) 
    @Column(nullable = false) 
    private Map<Long, List<Role>> assignedRoles = new HashMap<>(); 

    //gets e setters 
} 

благодарственное'S! : D

+1

кто вам сказал, что можно было вставить значение списка типа в карте, используя JPA? –

+0

Не знаю, я думаю, это было возможно. благодаря! – renanlessa

ответ

0

Я думаю, с помощью @ManyToMany или @OneToMany достаточно для вашей задачи

@Entity 
public class Schedule extends PersistentObject implements Comparable<Schedule> { 

    @Column 
    private String title; 

    @ManyToOne 
    private Agent target; 

    @OneToMany 
    private List<Unit> units = new List<>(); 

} 

@Entity 
public class Unit { 

    @ManyToMany 
    private List<Role> assignedRoles = new List<>(); 

} 
+0

Привет, Мне нужна карта, если это возможно, потому что расписание должно сохранять ключ (Unit, другой объект) со списком ролей. Спасибо, в любом случае! – renanlessa

+0

@renanlessa Невозможно использовать карту. Возможно, вам нужна еще одна сущность. Я обновляю. –

+0

Я сделаю это, еще раз спасибо! : D – renanlessa

Смежные вопросы