問題

Hibernateの開発では、次のエラーメッセージをヒットするのが一般的です。

SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/classes/config/database/spring/HibernateSessionFactory.xml]:
Invocation of init method failed; nested exception is

Caused by: org.hibernate.HibernateException:
Unable to instantiate default tuplizer[org.hibernate.tuple.entity.PojoEntityTuplizer]    ...
    ...
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    ...
Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)V
    at net.sf.cglib.core.DebuggingClassWriter.<init>(DebuggingClassWriter.java:47)
    ...

解決策



デフォルトのtuplizerをインスタンス化できません[org.hibernate.tuple.entity.PojoEntityTuplizer

“は一般的なエラーです

メッセージは、多くの理由で発生する可能性があります。したがって、エラーの原因となった最後の行を確認する必要があります。

Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter

その主な原因は

古いasm.jarライブラリです。たとえば、 ‘asm-1.5.3.jar’です。asmライブラリ

を最新のバージョンにアップグレードするだけで、エラーメッセージが取り除かれます。例えば、 ‘asm-3.1.jar’。