Ich habe Hibernate Tools verwendet, um mein Hibernate POJO Mapping zu generieren.
Leider scheint der von den Hibernate-Tools generierte Code nicht zu funktionieren, ich bekomme die Ausnahme
org.hibernate.AnnotationException: Die Sammlung hat weder einen generischen Typ noch OneToMany.targetEntity ()
Die Code-Teile, die die Ausnahme erzeugen, sind
%Vor%Nach diesem Beitrag
und dieser Beitrag
Sie müssen den von Hibernates generierten Code selbst ändern.
Dies ist eine Sache, die ich vermeiden möchte. Irgendwelche Ideen, was könnte das Problem sein?
Grüße
JS
Verwenden Sie Java 5 Syntax ist die richtige Antwort ... aber es ist sehr irreführend. Sollte Java 5+ Syntax verwenden, wer würde denken, Java 5 zu verwenden.
Suchen Sie auf "Red Hat hbm2java docs", da der Link unterbrochen ist. Zusätzlicher Bonus, damit Sie nicht suchen müssen. Aktivieren Sie beide Kontrollkästchen, um das generierte Java zu "modernisieren". Leider zeigen die Beschriftungen der Kontrollkästchen nicht an, was passiert, wenn Sie sie überprüfen. Man würde denken, dass "Java 5 Syntax verwenden" viele Implikationen hat und da es standardmäßig deaktiviert ist, ist es nicht das gewünschte / typische Verhalten.
Auf jeden Fall beide Kästchen markieren, um Annotationen und Generika zu verwenden. Dann informieren Sie Eclipse unter "Aufräumen" -Optionen, um die UID der seriellen Version zu generieren. Nahm mich 3 Tage, um das alles herauszufinden.
Für diejenigen, die brauchen. Soweit ich mich erinnere, hat die Java Enterprise Edition mit Java EE 5 viele Funktionen, insbesondere im Umgang mit Annotationen und Generika. Aus diesem Grund denke ich, dass die Verwendung von Java 5 Syntax auf Eclipse oder Java 5 Kompatibilität auf Netbeans, wenn die Entitäten mit Hibernate erzeugt werden, sicherstellen wird, dass der generierte Code verwendet wird diese 'neuen Funktionen' von Java 5 zählen.
Weil ich nur 42 als Ruf habe, kann ich nichts dazu sagen !!!
Um Java 5 Generics in einem automatisierten Build zu verwenden, können Sie Ihre Argumente ändern, um jdk5 wie folgt zu aktivieren:
%Vor%Diese Informationen sind hier dokumentiert: Red Hat hbm2java docs .
Tags und Links java hibernate annotations hibernate-tools