PS: just realized you use an XA DataSource, maybe check end of this page:
http://tomee.apache.org/datasource-config.html. I'd go with "two resources
definition" to avoid ambiguities.


Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
<http://www.tomitribe.com>

2015-07-27 12:29 GMT-07:00 Romain Manni-Bucau <[email protected]>:

> Hi Mike,
>
> is it the setup you run on tomee?
>
> java:/jdbc/transaction-ds looks suspicious, should be
> openejb:Resource/jdbc/transaction-ds. Doesnt start out of the box locally
> for me at least
>
>
> Side note 1: any way to reproduce it with DB2 or HsqlDB or worse case
> MySQL - SQL Server is not widely installed on our local machines I think?
>
> Side note 2: if you dont need TomcatInstrumentableClassLoader in your app
> better to not add it
>
>
> Romain Manni-Bucau
> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> <http://rmannibucau.wordpress.com> | Github
> <https://github.com/rmannibucau> | LinkedIn
> <https://www.linkedin.com/in/rmannibucau> | Tomitriber
> <http://www.tomitribe.com>
>
> 2015-07-27 12:13 GMT-07:00 Mike Spencer <[email protected]>:
>
>> I put a sample project on my github page at
>> https://github.com/firelore/transaction-test
>>
>> The DataSource definition is in the README.md. For the purposes of the
>> sample project, there is nothing else in the tomee.xml besides the xml
>> declaration and the <tomee> tags. The context.xml was modified to include
>> <Loader
>> loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>
>> as per Spring instructions.
>>
>> Thanks,
>> Mike Spencer
>>
>> On 07/24/2015 11:59 AM, Romain Manni-Bucau wrote:
>>
>>> just wanted to ensure figures were moving to validate it was the same
>>> instance.
>>>
>>> Isnt your issue just the rollback which happens and then the tx is
>>> missing?
>>>
>>> if you can reproduce it on a github project it would be easier to
>>> investigate.
>>>
>>>
>>> Romain Manni-Bucau
>>> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>>> <http://rmannibucau.wordpress.com> | Github <
>>> https://github.com/rmannibucau> |
>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
>>> <http://www.tomitribe.com>
>>>
>>> 2015-07-24 9:54 GMT-07:00 Mike Spencer <[email protected]>:
>>>
>>>  Hi Romain,
>>>>
>>>> JMX (under openejb.management.TransactionManager) is showing commits and
>>>> rollbacks, increasing as I use the application. If this is not the
>>>> correct
>>>> instance, what else could it be?
>>>>
>>>>
>>>> On 07/24/2015 09:21 AM, Romain Manni-Bucau wrote:
>>>>
>>>>  Yes it is the correct type but wonder if  it is the correct instance.
>>>>>
>>>>> In JMX you have nulber of tx and commits, maybe check it as well.
>>>>>    Le 24 juil. 2015 15:46, "Andy Gumbrecht" <[email protected]>
>>>>> a
>>>>> écrit :
>>>>>
>>>>>   Hi Mike,
>>>>>
>>>>>> Either add @Stateless to your bean that accesses the db and let TomEE
>>>>>> manage the transaction, or @Inject UserTransaction trans into your
>>>>>> bean
>>>>>> and
>>>>>> call trans.begin() and trans.commit()
>>>>>>
>>>>>> Andy.
>>>>>>
>>>>>> On 24 July 2015 at 15:05, Mike Spencer <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>   Hi Romain,
>>>>>>
>>>>>>> I am using Spring's JtaTransactionManager and it is finding a
>>>>>>> org.apache.geronimo.transaction.manager.GeronimoTransactionManager at
>>>>>>> the
>>>>>>> JNDI location java:comp/UserTransaction. Is this the correct
>>>>>>> transaction
>>>>>>> manager to be using?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Mike Spencer
>>>>>>>
>>>>>>> On 07/23/2015 04:11 PM, Romain Manni-Bucau wrote:
>>>>>>>
>>>>>>>   Hi
>>>>>>>
>>>>>>>> isnt it only that spring is not able to lookup tomee tx magaer by
>>>>>>>>
>>>>>>>>  default?
>>>>>>> try to wire it in your app ctx.
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>> http://grepcode.com/file/repo1.maven.org/maven2/org.apache.openejb/openejb-core/4.7.1/org/apache/openejb/OpenEJB.java#OpenEJB.getTransactionManager%28%29
>>>>>>
>>>>>>  is the one (doable using methid invoker of spring IIRC)
>>>>>>>
>>>>>>>>
>>>>>>>> Romain Manni-Bucau
>>>>>>>> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>>>>>>>> <http://rmannibucau.wordpress.com> | Github <
>>>>>>>> https://github.com/rmannibucau> |
>>>>>>>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
>>>>>>>> <http://www.tomitribe.com>
>>>>>>>>
>>>>>>>>
>>>>>>>> 2015-07-23 14:04 GMT-07:00 Mike Spencer <[email protected]>:
>>>>>>>>
>>>>>>>>    Hi all,
>>>>>>>>
>>>>>>>>  I am having issues with using database transactions in a Spring
>>>>>>>>> based
>>>>>>>>> application. I have my data sources configured on TomEE and they
>>>>>>>>> work
>>>>>>>>> fine
>>>>>>>>> for non-transactional database calls, but whenever I try to call a
>>>>>>>>>
>>>>>>>>>  method
>>>>>>>>
>>>>>>> using Spring's @Transactional annotation a
>>>>>>> TransactionRequiredException
>>>>>>>
>>>>>>>> is
>>>>>>>>> thrown due to no active transactions. I have this application
>>>>>>>>> working
>>>>>>>>>
>>>>>>>>>  on
>>>>>>>>
>>>>>>> Glassfish currently and am trying to port it to TomEE.
>>>>>>>
>>>>>>>> The application is using JPA (through EclipseLink), Spring, and
>>>>>>>>> Spring
>>>>>>>>> Data JPA to handle the database calls. I have a
>>>>>>>>> org.springframework.transaction.jta.JtaTransactionManager
>>>>>>>>> configured
>>>>>>>>>
>>>>>>>>>  and
>>>>>>>>
>>>>>>> it
>>>>>>>
>>>>>>>> appears to be grabbing a
>>>>>>>>> org.apache.geronimo.transaction.manager.GeronimoTransactionManager
>>>>>>>>> from
>>>>>>>>> TomEE under a default JNDI name. I am not explicitly creating or
>>>>>>>>> configuring a TransactionManager in TomEE.
>>>>>>>>>
>>>>>>>>> As far as I can tell, everything is working up to a point of
>>>>>>>>> trying to
>>>>>>>>> the
>>>>>>>>> point of committing a transaction. I enabled debug logging and I
>>>>>>>>> get
>>>>>>>>>
>>>>>>>>>  this
>>>>>>>>
>>>>>>> in my logs:
>>>>>>>
>>>>>>>> 2015-07-23 14:50:07,510 DEBUG
>>>>>>>>> [AbstractPlatformTransactionManager.java:367] - Creating new
>>>>>>>>>
>>>>>>>>>  transaction
>>>>>>>>
>>>>>>> with name
>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>> [org.springframework.data.jpa.repository.support.SimpleJpaRepository.saveAndFlush]:
>>>>>>
>>>>>>  PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''
>>>>>>>
>>>>>>>> 2015-07-23 14:50:07,511 DEBUG
>>>>>>>>> [AbstractPlatformTransactionManager.java:847] - Initiating
>>>>>>>>> transaction
>>>>>>>>> rollback
>>>>>>>>> Jul 23, 2015 2:50:07 PM
>>>>>>>>> org.apache.catalina.core.ApplicationDispatcher
>>>>>>>>> invoke
>>>>>>>>> SEVERE: Servlet.service() for servlet dispatcher threw exception
>>>>>>>>> org.springframework.dao.InvalidDataAccessApiUsageException:
>>>>>>>>> Exception Description: No transaction is currently active; nested
>>>>>>>>> exception is javax.persistence.TransactionRequiredException:
>>>>>>>>> Exception Description: No transaction is currently active
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I do not know if I missed a configuration option in TomEE or not,
>>>>>>>>> but
>>>>>>>>> I
>>>>>>>>> could use some help trying to find what I am missing.
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Mike Spencer
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  --
>>>>>>     Andy Gumbrecht
>>>>>>     https://twitter.com/AndyGeeDe
>>>>>>     http://www.tomitribe.com
>>>>>>
>>>>>>
>>>>>>
>>
>

Reply via email to