salinas
10-25-2006, 10:19 AM
in my project i write class has method to return domain objects using Hibernate hql and other method to return DataSet using AdoTemplate's DataSetCreate.
the problem is i saw this line in the log output
Exposing Hibernate transaction as ADO transaction
but when trace into the AdoTemplate's Execute method
txToUse = conHolder.Transaction;
txToUse always get a null.
the application context id defined as below
<object id="DbProvider" type="Spring.Data.Support.OLite.OLiteDbProvider,OLiteSup port">
<property name="ConnectionString" value="DSN=test;uid=system;pwd=manager"/>
</object>
<object id="adoTemplate" type="Spring.Data.AdoTemplate,Spring.Data">
<property name="DbProvider" ref="DbProvider"/>
</object>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingAssemblies">
<list>
<value>LocalModel</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="hibernate.connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
<entry key="hibernate.dialect"
value="NHibernate.Dialect.OracleDialect"/>
<entry key="hibernate.connection.driver_class"
value="NHibernate.Driver.OLiteDriver, OLiteSupport"/>
<entry key="hibernate.query.substitutions" value="true 1,false 0"/>
</dictionary>
</property>
</object>
<object id="hibernateTransactionManager"
type="Spring.Data.NHibernate.HibernateTransactionManager , Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<object id="transactionInterceptor"
type="Spring.Transaction.Interceptor.TransactionIntercep tor, Spring.Data">
<property name="TransactionManager" ref="hibernateTransactionManager"/>
<property name="TransactionAttributeSource">
<object type="Spring.Transaction.Interceptor.AttributesTransacti onAttributeSource, Spring.Data"/>
</property>
</object>
<object id="baseTxProxy"
type="Spring.Aop.Framework.ProxyFactoryObject, Spring.Aop" abstract="true">
<property name="InterceptorNames">
<value>transactionInterceptor</value>
</property>
</object>
<object id="queryTarget"
type="Test.QueryImpl">
<property name="sessionFactory" ref="SessionFactory"/>
<property name="AdoTemplate" ref="adoTemplate"/>
</object>
<object id="Query" parent="baseTxProxy">
<property name="target" ref="queryTarget"/>
</object>
the problem is i saw this line in the log output
Exposing Hibernate transaction as ADO transaction
but when trace into the AdoTemplate's Execute method
txToUse = conHolder.Transaction;
txToUse always get a null.
the application context id defined as below
<object id="DbProvider" type="Spring.Data.Support.OLite.OLiteDbProvider,OLiteSup port">
<property name="ConnectionString" value="DSN=test;uid=system;pwd=manager"/>
</object>
<object id="adoTemplate" type="Spring.Data.AdoTemplate,Spring.Data">
<property name="DbProvider" ref="DbProvider"/>
</object>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="MappingAssemblies">
<list>
<value>LocalModel</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="hibernate.connection.provider"
value="NHibernate.Connection.DriverConnectionProvider"/>
<entry key="hibernate.dialect"
value="NHibernate.Dialect.OracleDialect"/>
<entry key="hibernate.connection.driver_class"
value="NHibernate.Driver.OLiteDriver, OLiteSupport"/>
<entry key="hibernate.query.substitutions" value="true 1,false 0"/>
</dictionary>
</property>
</object>
<object id="hibernateTransactionManager"
type="Spring.Data.NHibernate.HibernateTransactionManager , Spring.Data.NHibernate">
<property name="DbProvider" ref="DbProvider"/>
<property name="sessionFactory" ref="SessionFactory"/>
</object>
<object id="transactionInterceptor"
type="Spring.Transaction.Interceptor.TransactionIntercep tor, Spring.Data">
<property name="TransactionManager" ref="hibernateTransactionManager"/>
<property name="TransactionAttributeSource">
<object type="Spring.Transaction.Interceptor.AttributesTransacti onAttributeSource, Spring.Data"/>
</property>
</object>
<object id="baseTxProxy"
type="Spring.Aop.Framework.ProxyFactoryObject, Spring.Aop" abstract="true">
<property name="InterceptorNames">
<value>transactionInterceptor</value>
</property>
</object>
<object id="queryTarget"
type="Test.QueryImpl">
<property name="sessionFactory" ref="SessionFactory"/>
<property name="AdoTemplate" ref="adoTemplate"/>
</object>
<object id="Query" parent="baseTxProxy">
<property name="target" ref="queryTarget"/>
</object>