Ich erkläre spring-framework 4.2.1.BUILD-SNAPSHOT und Hibernate 5.0.0.BETA2 in meinem Projekt, bekomme aber einen AbstractMethodError.
Hier ist der Stack-Trace:
%Vor%Ich habe ein Paket mit dem Namen org.springframework.orm.hibernate5 gesucht und gefunden. Ich nehme an, dass spring-framework jetzt hibernate5 unterstützen muss. Details Ссылка
Ich ändere die Version von Ruhezustand in andere Version 5.0, aber das Problem bleibt dort, sollte es ein Fehler meines Codes oder Frühjahr oder Winterschlaf sein? Meine Quelle funktioniert, wenn die Version von Hibernate 4.3.10.Final ist. Vielleicht zeigt der Stack-Trace nicht alle Probleme, Sie können meine Projektquelle über ( Ссылка ) anzeigen Kann mir jemand helfen? Danke!
Dies ist ein Problem mit Jadira UserType 4.0.0.GA und früher, in Kombination mit Hibernate 5. Es ist in UserType 5.0.0.GA behoben (siehe Ссылка ).
In meinem Fall habe ich den Benutzernamen 3.0.0.CR3 für JodaTime verwendet. Ich habe nicht versucht, Java 8 (JSR-310) Zeitklassen oder org.jadira.usertype: usertype.extended.
zu verwendenDas Debugging zeigt, dass die Ausnahme auftritt, wenn versucht wird, einen Integrator vom Typ "org.jadira.usertype.dateandtime.joda.integrator.UserTypeJodaTimeHibernateIntegrator" zu den IntegratorObservern von hibernate's SessionFactoryImpl hinzuzufügen.
Wenn Sie JSR-310 verwenden, empfiehlt Marsian, das Modul hibernate-java8 zu verwenden. Wenn Sie JodaTime und nicht JSR-310 verwenden, hilft das nicht. Eine relativ einfache Problemumgehung besteht darin, einen JPA 2.1 AttributeConverter für jeden von Ihnen verwendeten JodaTime-Typ zu erstellen.
AttributeConverter können auch für JSR-310-Typen verwendet werden. Sie haben den Vorteil, dass sie portabel sind und dass Sie jedes Entitätsfeld nicht mit Anmerkungen versehen müssen, wenn Sie autoApply = true festlegen.
Beispielklassen:
Es scheint, dass usertype dafür verantwortlich ist, usertype 4.0.0.GA unterstützt nicht hibernate5, denn hibernate5 hat seine eigenen Java-8-Klassen.
Entfernen org.jadira.usertype:usertype.extend
und hinzufügen org.hibernate:hibernate-java8
, das Problem ist verschwunden.
Ich habe das gleiche Problem gelöst, indem ich unten usernype
benutze %Vor%Tags und Links usertype spring-boot hibernate-5.x spring-4