cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrei Shakirin (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CXF-6425) Check for external transactions in PollingMessageListenerContainer
Date Thu, 28 May 2015 12:54:21 GMT

     [ https://issues.apache.org/jira/browse/CXF-6425?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andrei Shakirin updated CXF-6425:
---------------------------------
    Assignee: Christian Schneider  (was: Andrei Shakirin)

> Check for external transactions in PollingMessageListenerContainer
> ------------------------------------------------------------------
>
>                 Key: CXF-6425
>                 URL: https://issues.apache.org/jira/browse/CXF-6425
>             Project: CXF
>          Issue Type: Improvement
>          Components: JMS
>    Affects Versions: 3.0.1, 3.1.0
>            Reporter: Andrei Shakirin
>            Assignee: Christian Schneider
>
> Currently PollingMessageListenerContainer doesn't check if transaction was already created
by container and tries to created nested one.
> That causes the following error:
> {code}
> 10:31:13,826 | WARN | pool-52-thread-1 | essageListenerContainer$XAPoller 128 | 158 -
org.apache.cxf.cxf-rt-transports-jms - 3.1.1.SNAPSHOT | Unexpected exception. Res
> tarting session and consumer javax.transaction.NotSupportedException: Nested Transactions
are not supported
> at org.apache.geronimo.transaction.manager.TransactionManagerImpl.begin(TransactionManagerImpl.java:157)
111:org.apache.aries.transaction.manager:1.1.1]
> at org.apache.geronimo.transaction.manager.TransactionManagerImpl.begin(TransactionManagerImpl.java:152)[111:org.apache.aries.transaction.manager:1.1.1]
> at org.apache.cxf.transport.jms.util.PollingMessageListenerContainer$XAPoller.run(PollingMessageListenerContainer.java:107)[158:org.apache.cxf.cxf-rt-transports-jms:3.1.1.SNAPSHOT]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_21]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_21]
> at java.lang.Thread.run(Thread.java:722)[:1.7.0_21]
> {code}
> Proposal: check if the transaction already exists and if yes:
> a) not start it explicitly through TransactionManager
> b) in case of exception call setRollbackOnly()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message