if (requestObject instanceof SlcExecutionRequest) {
SlcExecutionRequest msg = (SlcExecutionRequest) requestObject;
- SlcExecution slcExecution = msg.getSlcExecution();
+ SlcExecution slcExecutionMsg = msg.getSlcExecution();
- if (slcExecutionDao.getSlcExecution(slcExecution.getUuid()) == null) {
+ SlcExecution slcExecutionPersisted = slcExecutionDao.getSlcExecution(slcExecutionMsg.getUuid());
+ if (slcExecutionPersisted == null) {
if (log.isTraceEnabled())
log.trace("Creating SLC execution #"
- + slcExecution.getUuid());
+ + slcExecutionMsg.getUuid());
- slcExecutionDao.create(slcExecution);
+ slcExecutionDao.create(slcExecutionMsg);
} else {
if (log.isTraceEnabled())
log.trace("Updating SLC execution #"
- + slcExecution.getUuid());
+ + slcExecutionMsg.getUuid());
- slcExecutionDao.update(slcExecution);
+ slcExecutionDao.merge(slcExecutionMsg);
}
return null;
+ requestObject.getClass());
}
}
-
}
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
+ http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
+ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"
default-lazy-init="true">
<import
<bean id="slcServerDefault.sessionFactory.hibernateTestHSQL"
parent="slcTemplates.sessionFactory.hibernateBasic">
<property name="dataSource"
- ref="slcDefault.dataSource.inMemoryTestHSQL" />
+ ref="slcServerDefault.dataSource.inMemoryTestHSQL" />
<property name="hibernateProperties">
<value><![CDATA[
hibernate.dialect=org.hibernate.dialect.HSQLDialect
hibernate.hbm2ddl.auto=create
- hibernate.current_session_context_class=thread
hibernate.generate_statistics=true
+ hibernate.connection.autocommit=false
]]></value>
</property>
</bean>
+ <bean id="slcServerDefault.dataSource.inMemoryTestHSQL"
+ parent="slcDefault.dataSource.inMemoryTestHSQL"
+ destroy-method="destroy">
+ <property name="autoCommit" value="false" />
+ </bean>
+
<bean id="slcServerDefault.sessionFactory.persistentHSQL"
parent="slcTemplates.sessionFactory.hibernateBasic">
<property name="dataSource"
</bean>
<!-- DAOs -->
- <bean id="testResultDao" parent="slcTemplates.dao.testResultDao">
+ <bean id="hibernateTemplate"
+ class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory" />
+ <property name="allowCreate" value="false" />
+ </bean>
+
+ <bean id="testResultDao" parent="slcTemplates.dao.testResultDao">
+ <property name="hibernateTemplate" ref="hibernateTemplate" />
</bean>
<bean id="testResultCollectionDao"
parent="slcTemplates.dao.testResultCollectionDao">
- <property name="sessionFactory" ref="sessionFactory" />
+ <property name="hibernateTemplate" ref="hibernateTemplate" />
</bean>
<bean id="testRunDescriptorDao"
parent="slcTemplates.dao.testRunDescriptorDao">
- <property name="sessionFactory" ref="sessionFactory" />
+ <property name="hibernateTemplate" ref="hibernateTemplate" />
</bean>
<bean id="slcExecutionDao"
parent="slcTemplates.dao.slcExecutionDao">
- <property name="sessionFactory" ref="sessionFactory" />
+ <property name="hibernateTemplate" ref="hibernateTemplate" />
</bean>
<!-- Hibernate instrumentation -->
class="org.springframework.orm.hibernate3.support.OpenSessionInViewInterceptor">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
+
+ <!-- Transaction -->
+ <bean id="transactionManager"
+ class="org.springframework.orm.hibernate3.HibernateTransactionManager"
+ lazy-init="false">
+ <property name="sessionFactory" ref="sessionFactory" />
+ </bean>
+
</beans>
\ No newline at end of file
<bean class="org.argeo.slc.ws.CustomSoapExceptionResolver" />
- <!-- Transaction
+ <!-- Transaction -->
<aop:config>
- <aop:pointcut id="resultPartRequestEpMethods"
- expression="execution(* org.argeo.slc.ws.test.tree.ResultPartRequestEp.*(..))" />
- <aop:advisor advice-ref="resultPartRequestEpAdvice"
- pointcut-ref="resultPartRequestEpMethods" />
+ <aop:pointcut id="epMethods"
+ expression="execution(* org.springframework.ws.server.endpoint.MessageEndpoint.invoke(..))" />
+ <aop:advisor advice-ref="epAdvice" pointcut-ref="epMethods" />
</aop:config>
- <tx:advice id="resultPartRequestEpAdvice"
- transaction-manager="hibernateTransactionManager">
+ <tx:advice id="epAdvice" transaction-manager="transactionManager">
<tx:attributes>
- <tx:method name="*" propagation="REQUIRED" />
+ <tx:method name="*" propagation="REQUIRES_NEW" />
</tx:attributes>
</tx:advice>
- -->
+
</beans>
\ No newline at end of file