Тип встроенного атрибута не должен быть картой - PullRequest
0 голосов
/ 06 июня 2018

У меня есть объект типа @Embeddable:

@Embeddable
public class FileData {

    /* --- Members --- */

    @Column(name = "path")
    private String path;

    @Column(name = "type")
    private String type;

}

И у меня есть еще один объект, который будет его содержать.

@Entity(name = "EmbeddingObject")
@Table(name = "embeddingObjcetTable")
public class EmbeddingObject {

    @ManyToMany(fetch = FetchType.EAGER)
    @JoinTable(name = "embeddingObjcetTable_files",
        joinColumns = {@JoinColumn(name = "embedding_id", referencedColumnName = "id")},
    private Set<File> files;


    @ElementCollection(fetch = FetchType.EAGER)
    @Column(name = "embedding_id")
    @CollectionTable(name="embeddingObjcetTable_fileData",
        joinColumns = {@JoinColumn(name = "embedding_id", referencedColumnName = "id")}))
    @MapKeyJoinColumn(name = "file_id")
    private Map<File, FileData> fileDataMapping;  <-- HERE
}

Ошибка, которую я получаю:

Тип встроенного атрибута не должен быть картой. Единственный внедренный объект - FileData.

Кто-нибудь знает, что я делаю неправильно?

Я подумал, может быть, это просто предупреждение, но на самом деле сборка не удалась.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...