[
https://issues.apache.org/jira/browse/TOMEE-2229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan S Fisher updated TOMEE-2229:
-------------------------------------
Affects Version/s: 7.0.6
7.1.1
8.0.0-M3
> JMSContext Injected by TomEE does not participate in JTA, or at least sends
> messages immediately
> ------------------------------------------------------------------------------------------------
>
> Key: TOMEE-2229
> URL: https://issues.apache.org/jira/browse/TOMEE-2229
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
> Affects Versions: 7.0.5, 7.0.6, 7.1.1, 8.0.0-M3
> Reporter: Jonathan S Fisher
> Assignee: Jonathan S Fisher
> Priority: Critical
>
> Hey guys,
> We noticed that if you have a JMSContext in a transaction EJB or CDI Bean, it
> always sends messages immediately instead of waiting for the XA to commit.
> We found this by injecting a JMSContext into an MDB marked with
> TransactionAttribute(Required), calling the jmsContext.createProducer()
> method, sending some messages, then sleeping the original MDB thread for
> several seconds. The messages arrive at their destinations immediately, long
> before the MDB thread wakes up and the XA transaction completes.
> Is there a chance our understanding is not correct?
> According to the docs:
> {quote}If the injected JMSContext is used in a JTA transaction (whether
> container-managed or bean-managed), the JMSContext is considered to have
> transaction scope. This means that after the JTA transaction is committed,
> the JMSContext will be automatically closed.{quote}
> References:
> * https://www.oracle.com/technetwork/articles/java/jms20-1947669.html
--
This message was sent by Atlassian Jira
(v8.3.2#803003)