java.lang.NoClassDefFoundError: org/hibernate/cfg/AnnotationConfiguration -
i've created web dynamic project, , want use hibernate
it.
then, used hibernate code generation
generate classes code, , created class hibernateutil
initialize sessionfactory
.
public class hibernateutil { private static final sessionfactory sessionfactory = buildsessionfactory(); private static sessionfactory buildsessionfactory(){ try{ sessionfactory sessionfactory = new annotationconfiguration().configure().buildsessionfactory(); return sessionfactory; }catch(exception ex){ ex.printstacktrace(); throw new exceptionininitializererror(ex); } } public static sessionfactory getsessionfactory() { return sessionfactory; } public static void shutdown() { getsessionfactory().close(); } }
and class hibernatesessionfactorylistener
:
public class hibernatesessionfactorylistener implements servletcontextlistener{ @override public void contextinitialized(servletcontextevent arg0) { session session = hibernateutil.getsessionfactory().opensession(); system.out.println("\n context initilaise \n"); } @override public void contextdestroyed(servletcontextevent arg0) { hibernateutil.shutdown(); system.out.println("\n context detruit \n"); } }
when run project error message :
java.lang.noclassdeffounderror: org/hibernate/cfg/annotationconfiguration @ com.hibernate.hibernateutil.buildsessionfactory(hibernateutil.java:28) @ com.hibernate.hibernateutil.<clinit>(hibernateutil.java:11) @ com.hibernate.hibernatesessionfactorylistener.contextinitialized(hibernatesessionfactorylistener.java:12) @ org.apache.catalina.core.standardcontext.listenerstart(standardcontext.java:4973) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5467) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1559) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1549) @ java.util.concurrent.futuretask.run(futuretask.java:262) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) @ java.lang.thread.run(thread.java:744) caused by: java.lang.classnotfoundexception: org.hibernate.cfg.annotationconfiguration @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1718) @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1569) ... 12 more
how can solve problem ?
edit 1 :
this java build path :
in hibernate 3.6, “org.hibernate.cfg.annotationconfiguration” deprecated, , functionality has been moved “org.hibernate.cfg.configuration“. , can safely replace “annotationconfiguration” “configuration” class
source: http://www.mkyong.com/hibernate/hibernate-the-type-annotationconfiguration-is-deprecated/
Comments
Post a Comment