Będąc nowością w ORM, chciałbym znaleźć sposób na zdefiniowanie prostego (czyli bez dodatkowego obiektu) mapowania dla listy (lub zestawu) łańcuchów w jednostce. Znalazłem tę próbkę:Mapowanie JPA dla listy lub zestawu <String>
która wydaje się pasować do moich potrzeb. Jednak przetwarzanie tę klasę z Eclipse hibernate3-maven-plugin:2.2:hbm2ddl
, ja skończyć z powodu następującego błędu:
[ERROR] Failed to execute goal org.codehaus.mojo:hibernate3-maven-plugin:2.2:hbm2ddl (default) on project test-database: Execution default of goal org.codehaus.mojo:hibernate3-maven-plugin:2.2:hbm2ddl failed: Could not determine type for: java.util.Set, at table: Book, for columns: [org.hibernate.mapping.Column(tags)] -> [Help 1]
Określanie @ElementCollection(targetClass=String.class)
nie pomogło. Dodanie definicji kolumny do pola tags
(@Column(name = "tags", columnDefinition="character varying (255)", nullable = false)
) prowadzi do udanej kompilacji ale daje to SQL:
create table Book (
id int8 not null,
tags character varying (255) not null,
primary key (id)
);
który nie jest to, co chcę, jak spodziewałem się skończyć z tags
stołu związanego z książek stół. Czy ktoś może wskazać mi właściwy kierunek? Dziękuję Ci.
W00t! Dziękuję Ci. Rzeczywiście wtyczka używa starej wersji Hibernate. Aktualizacja pom do nowszej wersji rozwiązała problem. – Blablalux