Hibernate spring Integration
Hi,
I am trying to use use hibernate withstruts & mysql
I tried the petclinic example with hibernate it worked.
So now I am trying to do it for the jpetstore example.
I have done following changes in jpetstore
My dataAccessContext-local.xml is as follows
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/jdbc.properties"/>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mappingResources">
<value>petstore.hbm.xml</value>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.generate_statistics">true</prop>
</props>
</property>
<property name="eventListeners">
<map>
<entry key="merge">
<bean class="org.springframework.orm.hibernate3.support.IdTransferringMergeEventListener"/>
</entry>
</map>
</property>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- ========================= RESOURCE DEFINITIONS ========================= -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<!--
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
-->
<!-- ========================= DAO DEFINITIONS: IBATIS IMPLEMENTATIONS ========================= -->
<bean id="accountDao" class="org.springframework.samples.jpetstore.dao.hibernate.HibernateImplAccountDao">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
</beans>
My application-Context-hibernate.xml is as follows
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- ========================= BUSINESS OBJECT DEFINITIONS ========================= -->
<bean id="accountValidator" class="org.springframework.samples.jpetstore.domain.logic.AccountValidator"/>
<bean id="orderValidator" class="org.springframework.samples.jpetstore.domain.logic.OrderValidator"/>
<bean id="petStore" parent="store">
<property name="target">
<bean class="org.springframework.samples.jpetstore.domain.logic.PetStoreImpl">
<property name="accountDao" ref="accountDao"/>
</bean>
</property>
</bean>
<bean id="store" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager"/>
<property name="transactionAttributes">
<props>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="load*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="store*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<bean name="petclinic:service=hibernateStatistics" class="org.hibernate.jmx.StatisticsService">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- ========================= JMX EXPORTER DEFINITION ========================= -->
<bean id="jmxExporter" class="org.springframework.jmx.export.MBeanExporter">
<property name="autodetect" value="true"/>
</bean>
</beans>
But I am getting following error while the beans getting loaded in the jakarta-tomcat-5.5.9 screen
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/dataAccessContext-local.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.ja va:2365)
at java.lang.Class.getDeclaredMethods(Class.java:1763 )
at java.beans.Introspector$1.run(Introspector.java:12 59)
at java.security.AccessController.doPrivileged(Native Method)
at java.beans.Introspector.getPublicDeclaredMethods(I ntrospector.java:1257)
at java.beans.Introspector.getTargetMethodInfo(Intros pector.java:1125)
at java.beans.Introspector.getBeanInfo(Introspector.j ava:383)
at java.beans.Introspector.getBeanInfo(Introspector.j ava:155)
at org.springframework.beans.CachedIntrospectionResul ts.<init>(CachedIntrospectionResults.java:140)
at org.springframework.beans.CachedIntrospectionResul ts.forClass(CachedIntrospectionResults.java:82)
at org.springframework.beans.BeanWrapperImpl.setIntro spectionClass(BeanWrapperImpl.java:370)
at org.springframework.beans.BeanWrapperImpl.setWrapp edInstance(BeanWrapperImpl.java:328)
at org.springframework.beans.BeanWrapperImpl.setWrapp edInstance(BeanWrapperImpl.java:310)
at org.springframework.beans.BeanWrapperImpl.<init>(B eanWrapperImpl.java:192)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:327)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:226)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:147)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:270)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:312)
at org.springframework.web.context.support.AbstractRe freshableWebApplicationContext.refresh(AbstractRef reshableWebApplicationContext.java:134)
at org.springframework.web.context.ContextLoader.crea teWebApplicationContext(ContextLoader.java:230)
at org.springframework.web.context.ContextLoader.init WebApplicationContext(ContextLoader.java:156)
at org.springframework.web.context.ContextLoaderListe ner.contextInitialized(ContextLoaderListener.java: 48)
at org.apache.catalina.core.StandardContext.listenerS tart(StandardContext.java:3669)
at org.apache.catalina.core.StandardContext.start(Sta ndardContext.java:4104)
at org.apache.catalina.core.ContainerBase.addChildInt ernal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(Co ntainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(Sta ndardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployWAR(H ostConfig.java:788)
at org.apache.catalina.startup.HostConfig.deployWARs( HostConfig.java:677)
at org.apache.catalina.startup.HostConfig.deployApps( HostConfig.java:473)
at org.apache.catalina.startup.HostConfig.start(HostC onfig.java:1102)
at org.apache.catalina.startup.HostConfig.lifecycleEv ent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLife cycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(Standa rdHost.java:718)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(Stan dardEngine.java:442)
at org.apache.catalina.core.StandardService.start(Sta ndardService.java:450)
at org.apache.catalina.core.StandardServer.start(Stan dardServer.java:683)
at org.apache.catalina.startup.Catalina.start(Catalin a.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootst rap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstr ap.java:409)
Oct 6, 2005 10:50:46 AM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Oct 6, 2005 10:50:46 AM org.apache.catalina.core.StandardContext start
SEVERE: Context [/jpetstore] startup failed due to previous errors
Oct 6, 2005 10:50:47 AM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Oct 6, 2005 10:50:47 AM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Oct 6, 2005 10:50:47 AM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/31 config=null
Oct 6, 2005 10:50:47 AM org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
Oct 6, 2005 10:50:47 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 12171 ms
Oct 6, 2005 11:02:47 AM org.apache.catalina.startup.HostConfig checkResources
INFO: Reloading context [/jpetstore]
Oct 6, 2005 11:15:57 AM org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/jpetstore] has not been started
Oct 6, 2005 11:15:59 AM org.springframework.web.context.ContextLoader initWebApplicationContext
INFO: Root WebApplicationContext: initialization started
Oct 6, 2005 11:15:59 AM org.springframework.beans.factory.xml.XmlBeanDefin itionReader loadBeanDefinitions
INFO: Loading XML bean definitions from ServletContext resource [/WEB-INF/dataAccessContext-local.xml]
Oct 6, 2005 11:15:59 AM org.springframework.core.CollectionFactory <clinit>
INFO: JDK 1.4+ collections available
Oct 6, 2005 11:15:59 AM org.springframework.core.CollectionFactory <clinit>
INFO: Commons Collections 3.x available
Oct 6, 2005 11:15:59 AM org.springframework.beans.factory.xml.XmlBeanDefin itionReader loadBeanDefinitions
INFO: Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-hibernate.xml]
Oct 6, 2005 11:15:59 AM org.springframework.context.support.AbstractRefres hableApplicationContext refreshBeanFactory
INFO: Bean factory for application context [Root WebApplicationContext]: org.springframework.beans.factory.support.DefaultL istableBeanFactory defining beans [propertyConfigurer,sessionFactory,transactionManag er,dataSource,accountDao,accountValidator,orderVal idator,petStore,store,petclinic:service=hibernateS tatistics,jmxExporter]; root of BeanFactory hie
Oct 6, 2005 11:16:00 AM org.springframework.context.support.AbstractApplic ationContext refresh
INFO: 11 beans defined in application context [Root WebApplicationContext]
Oct 6, 2005 11:16:00 AM org.springframework.beans.factory.support.Abstract BeanFactory getBean
INFO: Creating shared instance of singleton bean 'propertyConfigurer'
Oct 6, 2005 11:16:00 AM org.springframework.core.io.support.PropertiesLoad erSupport loadProperties
INFO: Loading properties file from ServletContext resource [/WEB-INF/jdbc.properties]
Oct 6, 2005 11:16:00 AM org.springframework.context.support.AbstractApplic ationContext initMessageSource
INFO: Unable to locate MessageSource with name 'messageSource': using default [org.springframework.context.support.DelegatingMess ageSource@979f67]
Oct 6, 2005 11:16:00 AM org.springframework.context.support.AbstractApplic ationContext initApplicationEventMulticaster
INFO: Unable to locate ApplicationEventMulticaster with name 'applicationEventMulticaster': using default [org.springframework.context.event.SimpleApplicatio nEventMulticaster@d12eea]
Oct 6, 2005 11:16:00 AM org.springframework.ui.context.support.UiApplicati onContextUtils initThemeSource
INFO: No ThemeSource found for [Root WebApplicationContext]: using ResourceBundleThemeSource
Oct 6, 2005 11:16:00 AM org.springframework.beans.factory.support.DefaultL istableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in factory [org.springframework.beans.factory.support.DefaultL istableBeanFactory defining beans [propertyConfigurer,sessionFactory,transactionManag er,dataSource,accountDao,accountValidator,orderVal idator,petStore,store,petclinic:service=hibernateS tatistics,jmxExporter]; root of BeanFactory hierarchy]
Oct 6, 2005 11:16:00 AM org.springframework.beans.factory.support.Abstract BeanFactory getBean
INFO: Creating shared instance of singleton bean 'sessionFactory'
Oct 6, 2005 11:16:00 AM org.springframework.beans.factory.support.Abstract BeanFactory destroySingletons
INFO: Destroying singletons in factory {org.springframework.beans.factory.support.Default ListableBeanFactory defining beans [propertyConfigurer,sessionFactory,transactionManag er,dataSource,accountDao,accountValidator,orderVal idator,petStore,store,petclinic:service=hibernateS tatistics,jmxExporter]; root of BeanFactory hierarchy}
Oct 6, 2005 11:16:00 AM org.springframework.web.context.ContextLoader initWebApplicationContext
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/dataAccessContext-local.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.ja va:2365)
at java.lang.Class.getDeclaredMethods(Class.java:1763 )
at java.beans.Introspector$1.run(Introspector.java:12 59)
at java.security.AccessController.doPrivileged(Native Method)
at java.beans.Introspector.getPublicDeclaredMethods(I ntrospector.java:1257)
at java.beans.Introspector.getTargetMethodInfo(Intros pector.java:1125)
at java.beans.Introspector.getBeanInfo(Introspector.j ava:383)
at java.beans.Introspector.getBeanInfo(Introspector.j ava:155)
at org.springframework.beans.CachedIntrospectionResul ts.<init>(CachedIntrospectionResults.java:140)
at org.springframework.beans.CachedIntrospectionResul ts.forClass(CachedIntrospectionResults.java:82)
at org.springframework.beans.BeanWrapperImpl.setIntro spectionClass(BeanWrapperImpl.java:370)
at org.springframework.beans.BeanWrapperImpl.setWrapp edInstance(BeanWrapperImpl.java:328)
at org.springframework.beans.BeanWrapperImpl.setWrapp edInstance(BeanWrapperImpl.java:310)
at org.springframework.beans.BeanWrapperImpl.<init>(B eanWrapperImpl.java:192)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:327)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:226)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:147)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:270)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:312)
at org.springframework.web.context.support.AbstractRe freshableWebApplicationContext.refresh(AbstractRef reshableWebApplicationContext.java:134)
at org.springframework.web.context.ContextLoader.crea teWebApplicationContext(ContextLoader.java:230)
at org.springframework.web.context.ContextLoader.init WebApplicationContext(ContextLoader.java:156)
at org.springframework.web.context.ContextLoaderListe ner.contextInitialized(ContextLoaderListener.java: 48)
at org.apache.catalina.core.StandardContext.listenerS tart(StandardContext.java:3669)
at org.apache.catalina.core.StandardContext.start(Sta ndardContext.java:4104)
at org.apache.catalina.startup.HostConfig.checkResour ces(HostConfig.java:1069)
at org.apache.catalina.startup.HostConfig.check(HostC onfig.java:1162)
at org.apache.catalina.startup.HostConfig.lifecycleEv ent(HostConfig.java:293)
at org.apache.catalina.util.LifecycleSupport.fireLife cycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.backgroundP rocess(ContainerBase.java:1304)
at org.apache.catalina.core.ContainerBase$ContainerBa ckgroundProcessor.processChildren(ContainerBase.ja va:1568)
at org.apache.catalina.core.ContainerBase$ContainerBa ckgroundProcessor.processChildren(ContainerBase.ja va:1577)
at org.apache.catalina.core.ContainerBase$ContainerBa ckgroundProcessor.run(ContainerBase.java:1557)
at java.lang.Thread.run(Thread.java:595)
Oct 6, 2005 11:16:00 AM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Oct 6, 2005 11:16:00 AM org.apache.catalina.core.StandardContext start
SEVERE: Context [/jpetstore] startup failed due to previous errors
Note
I am getting error while creating bean with name 'sessionFactory'.
Any help regarding the same would be highly appreciated.
Hibernate spring Integration
Sorry it is integration of hibernate with spring
Hibernate spring Integration
Hi,
The problem is solved.
Following jars added in /WEB-INF/lib
1)hibernate3.jar
2)jta.jar
3)jaxen-1.1-beta-4.jar
4)ehcache-1.1.jar
5)dom4j-1.6.jar