Results 1 to 8 of 8

Thread: Transactions not rolling back

  1. #1
    Join Date
    Mar 2005
    Posts
    11

    Default Transactions not rolling back

    The situation is as follows:

    Weblogic 8.1.4, MySql 5

    EJB->Service Bean -> Dao

    The ejb has a method declared as follows:

    Code:
    /**
     * @ejb.interface-method view-type="remote"
     * @ejb.transaction type="Required"
     */
    public Subscriber createSubscriber(Subscriber s)
     throws SubscriberServiceException {
        return ComponentLocator.getSubscriberService().createSubscriber(s);
    }
    ComponentLocator gets the service from the spring context for tx proxying:

    Code:
    public static SubscriberService getSubscriberService() {
       return (SubscriberService) context.getBean("subscriberService");
    }
    the context is as follows:
    Code:
    <bean id="subscriberServiceTarget" class="mypackage.SubscriberServiceImpl"/>
    <bean id="subscriberService"    class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
          <property name="transactionManager">
             <ref bean="transactionManager"/>
          </property>
          <property name="target">
             <ref bean="subscriberServiceTarget"/>
          </property>
          <property name="transactionAttributes">
             <props>
                <prop key="create*">PROPAGATION_REQUIRED</prop>
                <prop key="update*">PROPAGATION_REQUIRED</prop>
                <prop key="delete*">PROPAGATION_REQUIRED</prop>
                <prop key="retrieve*">PROPAGATION_REQUIRED,readOnly</prop>
             </props>
          </property>
    </bean>
    
    <bean id="transactionManager" class="org.springframework.transaction.jta.WebLogicJtaTransactionManager"/>
    The target code is:

    Code:
    public Subscriber createSubscriber&#40;Subscriber s&#41;
    			throws SubscriberServiceException &#123;
    		try &#123;
    			return SubscriberDAO.createSubscriber&#40;s&#41;;
    		&#125; catch &#40;DataAccessException e&#41; &#123;
    			logger.error&#40;e&#41;;
    			throw new SubscriberServiceException&#40;"error creating subscriber", e&#41;;
    		&#125;
    	&#125;
    Which calls some jdbc template type code:

    Code:
    public static Subscriber createSubscriber&#40;Subscriber s&#41;
    			throws DataAccessException &#123;
    		JdbcTemplate jt = new JdbcTemplate&#40;ComponentLocator
    				.getMyDataSource&#40;&#41;&#41;;
    		GeneratedKeyHolder genkey = new GeneratedKeyHolder&#40;&#41;;
    		final String name = s.getName&#40;&#41;;
    		final String type = s.getType&#40;&#41;;
    		jt.update&#40;new PreparedStatementCreator&#40;&#41; &#123;
    			public PreparedStatement createPreparedStatement&#40;Connection con&#41;
    					throws SQLException &#123;
    				PreparedStatement ps = con
    						.prepareStatement&#40;"insert into subscribers&#40;subscriber_name, subscriber_type&#41;"
    								+ " values &#40;?,?&#41;"&#41;;
    				ps.setString&#40;1, name&#41;;
    				ps.setString&#40;2, type&#41;;
    				return ps;
    			&#125;
    		&#125;, genkey&#41;;
    ....
    // null pointer exception occurs later
    &#125;
    With the following datasource:

    Code:
    <bean id="myDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
          <property name="jndiName">
             <value>datasource.myDS</value>
          </property>
          <property name="jndiTemplate">
             <ref bean="jndiTemplate"/>
          </property>
    </bean>
    In the dao I encountered a null pointer exception, but the insert didn't roll back as expected.

    Here is the logging:

    Code:
    2005-08-09 16&#58;17&#58;53,780 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.getResource&#40;TransactionSynchronizationManager.java&#58;136&#41; - Retrieved value &#91;org.springframework.jdbc.datasource.ConnectionHolder@10fb004&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@f6ede1&#93; bound to thread &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;119&#41; - Applying rules to determine whether transaction should rollback on java.lang.NullPointerException
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;137&#41; - Winning rollback rule is&#58; null
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;143&#41; - No relevant rollback rule found&#58; applying superclass default
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.TransactionAspectSupport.doCloseTransactionAfterThrowing&#40;TransactionAspectSupport.java&#58;272&#41; - Invoking rollback for transaction on gov.epa.cdx.enviroflash.service.subscriber.SubscriberService.createSubscriber due to throwable &#91;java.lang.NullPointerException&#93;
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCompletion&#40;AbstractPlatformTransactionManager.java&#58;576&#41; - Triggering beforeCompletion synchronization
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.unbindResource&#40;TransactionSynchronizationManager.java&#58;184&#41; - Removed value &#91;org.springframework.jdbc.datasource.ConnectionHolder@10fb004&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@f6ede1&#93; from thread &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-09 16&#58;17&#58;53,790 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.datasource.DataSourceUtils.doReleaseConnection&#40;DataSourceUtils.java&#58;271&#41; - Closing JDBC Connection
    2005-08-09 16&#58;17&#58;53,830 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback&#40;AbstractPlatformTransactionManager.java&#58;502&#41; - Setting existing transaction rollback-only
    2005-08-09 16&#58;17&#58;53,830 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.jta.JtaTransactionManager.doSetRollbackOnly&#40;JtaTransactionManager.java&#58;739&#41; - Setting JTA transaction rollback-only
    2005-08-09 16&#58;17&#58;53,830 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerAfterCompletion&#40;AbstractPlatformTransactionManager.java&#58;606&#41; - Triggering afterCompletion synchronization
    2005-08-09 16&#58;17&#58;53,830 &#91;ExecuteThread&#58; '13' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.clearSynchronization&#40;TransactionSynchronizationManager.java&#58;259&#41; - Clearing transaction synchronization
    Any ideas as to why it's not really rolling back? Also, if I change the transaction manager as follows:

    Code:
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
         <property name="dataSource" ref="myDataSource"/>
    </bean>
    It rolls back. But this isn't a good solution long term because this doesn't really mesh with Jta tx's.

  2. #2
    Join Date
    Aug 2005
    Location
    Romania
    Posts
    10

    Default

    Hi,

    From your trace

    org.springframework.transaction.jta.JtaTransaction Manager.doSetRollbackOnly(JtaTransactionManager.ja va:739) - Setting JTA transaction rollback-only
    it looks like Spring transaction manager is setting the transaction to be rolled back but JTA transaction started by Weblogic when you're calling your EJB for some reason is not rolled back. For your EJB are you using CMT or BMT?

    One other question would be, Is your NullPointerException propagated out of your EJB method ?


    Marius

  3. #3
    Join Date
    Mar 2005
    Posts
    11

    Default

    Quote Originally Posted by marius
    Hi,

    From your trace

    org.springframework.transaction.jta.JtaTransaction Manager.doSetRollbackOnly(JtaTransactionManager.ja va:739) - Setting JTA transaction rollback-only
    it looks like Spring transaction manager is setting the transaction to be rolled back but JTA transaction started by Weblogic when you're calling your EJB for some reason is not rolled back. For your EJB are you using CMT or BMT?

    One other question would be, Is your NullPointerException propagated out of your EJB method ?


    Marius
    I am using CMT, and yes, the NullPointerException is propogated to my Junit test case that invokes the EJB:

    Code:
    2005-08-10 10&#58;36&#58;02,419 ERROR mypackage.SubscriberServiceTest - org.springframework.remoting.RemoteAccessException&#58; Cannot access remote service &#91;service.SubscriberService&#93;; nested exception is java.rmi.RemoteException&#58; EJB Exception&#58; ; nested exception is&#58; 
    	java.lang.NullPointerException

    Also, and I doubt this matters, I'm proxying the EJB through spring:

    Code:
    <bean id="subscriberService" class="org.springframework.ejb.access.SimpleRemoteStatelessSessionProxyFactoryBean" lazy-init="true">
          <property name="jndiEnvironment">
             <props>
                <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
             </props>
          </property>
          <property name="lookupHomeOnStartup" value="false"/>
          <property name="jndiName" value="service.SubscriberService"/>
          <property name="businessInterface" value="mypackage.SubscriberService"/>
    </bean>

  4. #4
    Join Date
    Mar 2005
    Posts
    11

    Default update

    So to isolate it a bit further, I made the EJB method non-transactional, and am just relying on the spring transaction wiring. It still does not roll back, despite the fact that the logging indicates the doRollback is being called:

    Code:
    2005-08-10 11&#58;15&#58;58,691 &#91;ExecuteThread&#58; '4' for queue&#58; 'weblogic.kernel.System'&#93; DEBUG org.apache.struts.tiles.xmlDefinition.I18nFactorySet.initFactory&#40;I18nFactorySet.java&#58;196&#41; - Factory initialized from file '/WEB-INF/tiles-defs.xml'.
    2005-08-10 11&#58;15&#58;58,691 &#91;ExecuteThread&#58; '4' for queue&#58; 'weblogic.kernel.System'&#93; INFO  org.apache.struts.tiles.TilesPlugin.initDefinitionsFactory&#40;TilesPlugin.java&#58;236&#41; - Tiles definition factory loaded for module ''.
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.beans.factory.support.AbstractBeanFactory.getBean&#40;AbstractBeanFactory.java&#58;186&#41; - Returning cached instance of singleton bean 'subscriberService'
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForSharedInstance&#40;AbstractBeanFactory.java&#58;760&#41; - Bean with name 'subscriberService' is a factory bean
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary&#40;TransactionAspectSupport.java&#58;213&#41; - Getting transaction for gov.epa.cdx.enviroflash.service.subscriber.SubscriberService.createSubscriber
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction&#40;AbstractPlatformTransactionManager.java&#58;205&#41; - Using transaction object &#91;org.springframework.transaction.jta.JtaTransactionObject@6fdc0c&#93;
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction&#40;AbstractPlatformTransactionManager.java&#58;232&#41; - Creating new transaction
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.jta.JtaTransactionManager.doBegin&#40;JtaTransactionManager.java&#58;557&#41; - Beginning JTA transaction
    2005-08-10 11&#58;17&#58;01,704 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.initSynchronization&#40;TransactionSynchronizationManager.java&#58;213&#41; - Initializing transaction synchronization
    2005-08-10 11&#58;17&#58;01,714 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.beans.factory.support.AbstractBeanFactory.getBean&#40;AbstractBeanFactory.java&#58;186&#41; - Returning cached instance of singleton bean 'enviroflashDataSource'
    2005-08-10 11&#58;17&#58;01,714 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForSharedInstance&#40;AbstractBeanFactory.java&#58;760&#41; - Bean with name 'enviroflashDataSource' is a factory bean
    2005-08-10 11&#58;17&#58;01,724 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.core.JdbcTemplate.update&#40;JdbcTemplate.java&#58;692&#41; - Executing SQL update and returning generated keys
    2005-08-10 11&#58;17&#58;01,734 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection&#40;DataSourceUtils.java&#58;106&#41; - Opening JDBC Connection
    2005-08-10 11&#58;17&#58;01,734 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection&#40;DataSourceUtils.java&#58;110&#41; - Registering transaction synchronization for JDBC Connection
    2005-08-10 11&#58;17&#58;01,734 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.bindResource&#40;TransactionSynchronizationManager.java&#58;161&#41; - Bound value &#91;org.springframework.jdbc.datasource.ConnectionHolder@1d79e35&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@19eef79&#93; to thread &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-10 11&#58;17&#58;01,734 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.getResource&#40;TransactionSynchronizationManager.java&#58;136&#41; - Retrieved value &#91;org.springframework.jdbc.datasource.ConnectionHolder@1d79e35&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@19eef79&#93; bound to thread &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-10 11&#58;17&#58;01,804 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.core.CollectionFactory.createLinkedCaseInsensitiveMapIfPossible&#40;CollectionFactory.java&#58;136&#41; - Falling back to java.util.LinkedHashMap for linked case-insensitive map
    2005-08-10 11&#58;17&#58;01,804 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.core.JdbcTemplate$3.doInPreparedStatement&#40;JdbcTemplate.java&#58;709&#41; - SQL update affected 1 rows and returned 1 keys
    2005-08-10 11&#58;17&#58;01,804 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.getResource&#40;TransactionSynchronizationManager.java&#58;136&#41; - Retrieved value &#91;org.springframework.jdbc.datasource.ConnectionHolder@1d79e35&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@19eef79&#93; bound to thread &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-10 11&#58;17&#58;01,804 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;119&#41; - Applying rules to determine whether transaction should rollback on java.lang.NullPointerException
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;137&#41; - Winning rollback rule is&#58; null
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.RuleBasedTransactionAttribute.rollbackOn&#40;RuleBasedTransactionAttribute.java&#58;143&#41; - No relevant rollback rule found&#58; applying superclass default
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.interceptor.TransactionAspectSupport.doCloseTransactionAfterThrowing&#40;TransactionAspectSupport.java&#58;272&#41; - Invoking rollback for transaction on gov.epa.cdx.enviroflash.service.subscriber.SubscriberService.createSubscriber due to throwable &#91;java.lang.NullPointerException&#93;
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCompletion&#40;AbstractPlatformTransactionManager.java&#58;576&#41; - Triggering beforeCompletion synchronization
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.unbindResource&#40;TransactionSynchronizationManager.java&#58;184&#41; - Removed value &#91;org.springframework.jdbc.datasource.ConnectionHolder@1d79e35&#93; for key &#91;weblogic.jdbc.common.internal.RmiDataSource@19eef79&#93; from thread &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93;
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.jdbc.datasource.DataSourceUtils.doReleaseConnection&#40;DataSourceUtils.java&#58;271&#41; - Closing JDBC Connection
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback&#40;AbstractPlatformTransactionManager.java&#58;497&#41; - Initiating transaction rollback
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.jta.JtaTransactionManager.doRollback&#40;JtaTransactionManager.java&#58;728&#41; - Rolling back JTA transaction
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerAfterCompletion&#40;AbstractPlatformTransactionManager.java&#58;606&#41; - Triggering afterCompletion synchronization
    2005-08-10 11&#58;17&#58;01,814 &#91;ExecuteThread&#58; '14' for queue&#58; 'weblogic.kernel.Default'&#93; DEBUG org.springframework.transaction.support.TransactionSynchronizationManager.clearSynchronization&#40;TransactionSynchronizationManager.java&#58;259&#41; - Clearing transaction synchronization

  5. #5
    Join Date
    Aug 2005
    Location
    Romania
    Posts
    10

    Default

    I must admit that this is quite interesting. From your last traces it looks like the JDBC Connection is closed before JTATransactionManager triggers rollback.

    org.springframework.jdbc.core.JdbcTemplate$3.doInP reparedStatement(JdbcTemplate.java:709) - SQL update affected 1 rows and returned 1 keys
    ...hmm.... may this indicate a commit ?

  6. #6
    Join Date
    Mar 2005
    Posts
    11

    Default

    Quote Originally Posted by marius
    I must admit that this is quite interesting. From your last traces it looks like the JDBC Connection is closed before JTATransactionManager triggers rollback.

    org.springframework.jdbc.core.JdbcTemplate$3.doInP reparedStatement(JdbcTemplate.java:709) - SQL update affected 1 rows and returned 1 keys
    ...hmm.... may this indicate a commit ?
    Perhaps, but all of the connection management logic is occuring in the JdbcTemplate, so I'm not sure what I can do to avoid this. Is there some limitation on how many levels of indirection you can have between the transactional proxy and where the actual db interaction that takes place? That is to say, do Jdbc operations have to occur directly in the method that starts/continues the transaction, or does it continue along the call stack?

  7. #7
    Join Date
    Aug 2004
    Posts
    1,107

    Default

    I'm wondering what is in your WebLogic configuration for the DataSource - is it a JDBCTxDataSource? Looking in my config.xml I have the following kind of entries for my DataSources:
    Code:
        <JDBCTxDataSource JNDIName="jdbc/imagedb" Name="imagedbDS"
            PoolName="imagedbPool" Targets="myserver"/>
    Thomas Risberg
    SpringSource by Pivotal
    http://www.springsource.org

  8. #8
    Join Date
    Mar 2005
    Posts
    11

    Default

    Quote Originally Posted by trisberg
    I'm wondering what is in your WebLogic configuration for the DataSource - is it a JDBCTxDataSource? Looking in my config.xml I have the following kind of entries for my DataSources:
    Code:
        <JDBCTxDataSource JNDIName="jdbc/imagedb" Name="imagedbDS"
            PoolName="imagedbPool" Targets="myserver"/>
    If you are ever in Maryland, I'll buy you a beer. That's exactly what it was. It's always the stupid little things. Thanks for your help (you too marius).

Similar Threads

  1. Replies: 7
    Last Post: Sep 13th, 2005, 01:45 AM
  2. Transaction rolling back - What's wrong ??
    By vaibhavkhattri in forum Data
    Replies: 5
    Last Post: Aug 16th, 2005, 04:42 AM
  3. Replies: 3
    Last Post: Jul 14th, 2005, 10:30 AM
  4. Replies: 10
    Last Post: Jul 8th, 2005, 02:55 AM
  5. Transaction Not Rolling Back
    By garyhsmith in forum Data
    Replies: 11
    Last Post: May 5th, 2005, 08:01 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •