Hello
I pretty much followed the Springtraining application within the Spring in Action book, everything including db reading works fine. Unfortunately the application does not write to the db. Further it simple ignores the show_sql property.
Here is my hibernate propertys file
here is the relevant part of my dispatcher-servlet.xmlCode:<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="show_sql">true</property> <property name="dialect">org.hibernate.dialect.Oracle9Dialect</property> </session-factory> </hibernate-configuration>
here is my DAOClassCode:<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource"/> </property> <property name="mappingDirectoryLocations"> <list> <value>classpath:/com/praemed/database/data</value> </list> </property> </bean> <!-- Services --> <bean id="regionServiceTarget" class="com.praemed.service.RegionServiceImpl"> <constructor-arg><ref bean="regionDao"/></constructor-arg> </bean> <!-- TRANSACTION SUPPORT --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="regionService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="target"><ref bean="regionServiceTarget"/></property> <property name="transactionManager"> <ref bean="transactionManager"/> </property> <property name="transactionAttributes"> <props> <prop key="createRegion"> PROPAGATION_REQUIRED,ISOLATION_DEFAULT </prop> </props> </property> </bean> <!-- DAO classes --> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="criteriaDao" class="com.praemed.database.dao.CriteriaDaoHibernate"> <!--property name="hibernateTemplate"> <ref bean="hibernateTemplate"/> </property--> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="regionDao" class="com.praemed.database.dao.RegionDaoHibernate"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> <bean id="invasivetyLevelDao" class="com.praemed.database.dao.InvasivetyLevelDaoHibernate"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean>
Thats what the logfile tells meCode:public class RegionDaoHibernate extends HibernateDaoSupport implements RegionDao { protected final Log LOGGER = LogFactory.getLog(getClass()); /* (non-Javadoc) * @see com.praemed.database.dao.RegionDao#findById(java.lang.String) */ public Region findById(final String id) { return (Region)getHibernateTemplate().load(Region.class,new Long(id)); } /* (non-Javadoc) * @see com.praemed.database.dao.RegionDao#create(com.praemed.database.data.Region) */ public void create(Region region) { LOGGER.info("Persisting Region:"+region.getId()+" "+region.getName()); getHibernateTemplate().saveOrUpdate(region); LOGGER.info("Region persisted"); } /* (non-Javadoc) * @see com.praemed.database.dao.RegionDao#getAllRegions() */ public List getAllRegions() { return getHibernateTemplate().loadAll(Region.class); } }
I tried to flush manually but it didn't helpCode:2005-06-20 22:13:30,426 INFO [com.praemed.mvc.AddRegionController] - **************************** Creating Region 2005-06-20 22:13:30,426 INFO [com.praemed.database.dao.RegionDaoHibernate] - Persisting Region:0 lkjh 2005-06-20 22:13:30,436 INFO [com.praemed.database.dao.RegionDaoHibernate] - Region persisted 2005-06-20 22:13:30,446 INFO [com.praemed.mvc.AddRegionController] - **************************** Region created.
TIA
Best regards
John


Reply With Quote