Sunday, 15 July 2012

hibernate - Spring MVC bean creation error -



hibernate - Spring MVC bean creation error -

i trying create spring mvc application hibernate , mysql.

without hibernate part project works , welcome page. when add together hibernate error in service. autowiring proble dont understand why happening

here github project url

https://github.com/ipvsazzad/springmvchibernatesecuritysitemesh

when running in tomcat 7 server getting next error

org.springframework.beans.factory.beancreationexception: error creating bean name 'teamserviceimpl': injection of autowired dependencies failed; nested exception org.springframework.beans.factory.beancreationexception: not autowire field: private org.hibernate.sessionfactory com.lynas.service.impl.teamserviceimpl.session; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'sessionfactorybean' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.springframework.orm.hibernate3.annotation.annotationsessionfactorybean com.lynas.util.appconfig.sessionfactorybean()] threw exception; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor.postprocesspropertyvalues(autowiredannotationbeanpostprocessor.java:334) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1204) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:538) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:476) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:302) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:229) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:298) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:193) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:725) @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:757) @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:480) @ org.springframework.web.context.contextloader.configureandrefreshwebapplicationcontext(contextloader.java:403) @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:306) @ org.springframework.web.context.contextloaderlistener.contextinitialized(contextloaderlistener.java:106) @ org.apache.catalina.core.standardcontext.listenerstart(standardcontext.java:4994) @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5492) @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575) @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565) @ java.util.concurrent.futuretask$sync.innerrun(unknown source) @ java.util.concurrent.futuretask.run(unknown source) @ java.util.concurrent.threadpoolexecutor$worker.runtask(unknown source) @ java.util.concurrent.threadpoolexecutor$worker.run(unknown source) @ java.lang.thread.run(unknown source) caused by: org.springframework.beans.factory.beancreationexception: not autowire field: private org.hibernate.sessionfactory com.lynas.service.impl.teamserviceimpl.session; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'sessionfactorybean' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.springframework.orm.hibernate3.annotation.annotationsessionfactorybean com.lynas.util.appconfig.sessionfactorybean()] threw exception; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor$autowiredfieldelement.inject(autowiredannotationbeanpostprocessor.java:555) @ org.springframework.beans.factory.annotation.injectionmetadata.inject(injectionmetadata.java:87) @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor.postprocesspropertyvalues(autowiredannotationbeanpostprocessor.java:331) ... 23 more caused by: org.springframework.beans.factory.beancreationexception: error creating bean name 'sessionfactorybean' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.springframework.orm.hibernate3.annotation.annotationsessionfactorybean com.lynas.util.appconfig.sessionfactorybean()] threw exception; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.support.constructorresolver.instantiateusingfactorymethod(constructorresolver.java:601) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.instantiateusingfactorymethod(abstractautowirecapablebeanfactory.java:1113) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbeaninstance(abstractautowirecapablebeanfactory.java:1008) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:505) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:476) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:302) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:229) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:298) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:193) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.findautowirecandidates(defaultlistablebeanfactory.java:1081) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.doresolvedependency(defaultlistablebeanfactory.java:1006) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.resolvedependency(defaultlistablebeanfactory.java:904) @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor$autowiredfieldelement.inject(autowiredannotationbeanpostprocessor.java:527) ... 25 more caused by: org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.springframework.orm.hibernate3.annotation.annotationsessionfactorybean com.lynas.util.appconfig.sessionfactorybean()] threw exception; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.support.simpleinstantiationstrategy.instantiate(simpleinstantiationstrategy.java:188) @ org.springframework.beans.factory.support.constructorresolver.instantiateusingfactorymethod(constructorresolver.java:590) ... 37 more caused by: org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.support.constructorresolver.instantiateusingfactorymethod(constructorresolver.java:601) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.instantiateusingfactorymethod(abstractautowirecapablebeanfactory.java:1113) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbeaninstance(abstractautowirecapablebeanfactory.java:1008) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:505) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:476) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:302) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:229) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:298) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:193) @ org.springframework.context.annotation.configurationclassenhancer$beanmethodinterceptor.intercept(configurationclassenhancer.java:324) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b.datasource(<generated>) @ com.lynas.util.appconfig.sessionfactorybean(appconfig.java:47) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b.cglib$sessionfactorybean$2(<generated>) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b$$fastclassbyspringcglib$$f81bf959.invoke(<generated>) @ org.springframework.cglib.proxy.methodproxy.invokesuper(methodproxy.java:228) @ org.springframework.context.annotation.configurationclassenhancer$beanmethodinterceptor.intercept(configurationclassenhancer.java:312) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b.sessionfactorybean(<generated>) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(unknown source) @ sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source) @ java.lang.reflect.method.invoke(unknown source) @ org.springframework.beans.factory.support.simpleinstantiationstrategy.instantiate(simpleinstantiationstrategy.java:166) ... 38 more caused by: org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.support.simpleinstantiationstrategy.instantiate(simpleinstantiationstrategy.java:188) @ org.springframework.beans.factory.support.constructorresolver.instantiateusingfactorymethod(constructorresolver.java:590) ... 59 more caused by: java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ com.lynas.util.appconfig.datasource(appconfig.java:29) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b.cglib$datasource$1(<generated>) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b$$fastclassbyspringcglib$$f81bf959.invoke(<generated>) @ org.springframework.cglib.proxy.methodproxy.invokesuper(methodproxy.java:228) @ org.springframework.context.annotation.configurationclassenhancer$beanmethodinterceptor.intercept(configurationclassenhancer.java:312) @ com.lynas.util.appconfig$$enhancerbyspringcglib$$f777301b.datasource(<generated>) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(unknown source) @ sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source) @ java.lang.reflect.method.invoke(unknown source) @ org.springframework.beans.factory.support.simpleinstantiationstrategy.instantiate(simpleinstantiationstrategy.java:166) ... 60 more caused by: java.lang.classnotfoundexception: org.apache.commons.pool.impl.genericobjectpool @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1720) @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1571) ... 71 more oct 22, 2014 10:18:30 org.springframework.web.context.contextloader initwebapplicationcontext severe: context initialization failed org.springframework.beans.factory.beancreationexception: error creating bean name 'teamserviceimpl': injection of autowired dependencies failed; nested exception org.springframework.beans.factory.beancreationexception: not autowire field: private org.hibernate.sessionfactory com.lynas.service.impl.teamserviceimpl.session; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'sessionfactorybean' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.springframework.orm.hibernate3.annotation.annotationsessionfactorybean com.lynas.util.appconfig.sessionfactorybean()] threw exception; nested exception org.springframework.beans.factory.beancreationexception: error creating bean name 'datasource' defined in class path resource [com/lynas/util/appconfig.class]: instantiation of bean failed; nested exception org.springframework.beans.factory.beandefinitionstoreexception: mill method [public org.apache.commons.dbcp.basicdatasource com.lynas.util.appconfig.datasource()] threw exception; nested exception java.lang.noclassdeffounderror: org/apache/commons/pool/impl/genericobjectpool @ org.springframework.beans.factory.annotation.autowiredannotationbeanpostprocessor.postprocesspropertyvalues(autowiredannotationbeanpostprocessor.java:334) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.populatebean(abstractautowirecapablebeanfactory.java:1204) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.docreatebean(abstractautowirecapablebeanfactory.java:538) @ org.springframework.beans.factory.support.abstractautowirecapablebeanfactory.createbean(abstractautowirecapablebeanfactory.java:476) @ org.springframework.beans.factory.support.abstractbeanfactory$1.getobject(abstractbeanfactory.java:302) @ org.springframework.beans.factory.support.defaultsingletonbeanregistry.getsingleton(defaultsingletonbeanregistry.java:229) @ org.springframework.beans.factory.support.abstractbeanfactory.dogetbean(abstractbeanfactory.java:298) @ org.springframework.beans.factory.support.abstractbeanfactory.getbean(abstractbeanfactory.java:193) @ org.springframework.beans.factory.support.defaultlistablebeanfactory.preinstantiatesingletons(defaultlistablebeanfactory.java:725) @ org.springframework.context.support.abstractapplicationcontext.finishbeanfactoryinitialization(abstractapplicationcontext.java:757) @ org.springframework.context.support.abstractapplicationcontext.refresh(abstractapplicationcontext.java:480) @ org.springframework.web.context.contextloader.configureandrefreshwebapplicationcontext(contextloader.java:403) @ org.springframework.web.context.contextloader.initwebapplicationcontext(contextloader.java:306)

to me seems cant find hibernate.cfg.xml file. anyway how can prepare this??

the error quite clear if @ stacktrace.

caused by: java.lang.classnotfoundexception: org.apache.commons.pool.impl.genericobjectpool @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1720) @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1571) ... 71 more

you missing required classes.

looking @ dependencies using 11 year old snapshot version of commons-dbcp, instead of recent 1.4 version.

<dependency> <groupid>commons-dbcp</groupid> <artifactid>commons-dbcp</artifactid> <version>20030825.184428</version> </dependency>

change utilize newer version.

<dependency> <groupid>commons-dbcp</groupid> <artifactid>commons-dbcp</artifactid> <version>1.4</version> </dependency>

although commons-dbcp might work wouldn't recommend anymore. @ to the lowest degree should using commons-dbcp2 activly maintained or else hikaricp. remove commons-dbcp dependency , add

<dependency> <groupid>com.zaxxer</groupid> <artifactid>hikaricp-java6</artifactid> <version>2.1.0</version> <scope>compile</scope> </dependency>

next in code need add together next configure hikaricp datasource.

@bean public basicdatasource datasource(){ hikaridatasource ds= new hikaridatasource(); ds.setmaximumpoolsize(10); ds.setusername("root"); ds.setpassword( ""); ds.setdatasourceclassname("com.mysql.jdbc.jdbc2.optional.mysqldatasource"); ds.adddatasourceproperty("servername", "localhost"); ds.adddatasourceproperty("databasename", "hibnatedb"); ds.adddatasourceproperty("cacheprepstmts", true); ds.adddatasourceproperty("prepstmtcachesize", 250); ds.adddatasourceproperty("prepstmtcachesqllimit", 2048); ds.adddatasourceproperty("useserverprepstmts", true); homecoming ds; }

regarding hibernate configuration ideally shouldn't exist or @ to the lowest degree contain mapped classes. properties should move java instead (and suggest using dialect).

private properties hibernateproperties(){ properties properties = new properties(); properties.put("hibernate.dialect", "org.hibernate.dialect.mysql5innodbdialect"); properties.put("hibernate.show_sql", "false"); properties.put("hibernate.hbm2ddl.auto", "update"); properties.put("hibernate.cache.provider_class", "org.hibernate.cache.nocacheprovider"); homecoming properties; }

ideally ditch hibernate.cfg.xml , utilize next java config instead.

@bean public annotationsessionfactorybean sessionfactorybean(){ annotationsessionfactorybean asfb = new annotationsessionfactorybean(); asfb.setdatasource(datasource()); asfb.sethibernateproperties(hibernateproperties()); asfb.setpackagestoscan("com.lynas.model"); homecoming asfb; }

spring hibernate spring-mvc

No comments:

Post a Comment