Reinis Vicups created OPENEJB-2018:
--------------------------------------
Summary: Infinite loop in OpenEJBTransactionService causing
StackOverflowError during CDI event firing
Key: OPENEJB-2018
URL: https://issues.apache.org/jira/browse/OPENEJB-2018
Project: OpenEJB
Issue Type: Bug
Components: ejb31
Affects Versions: 4.6.0
Reporter: Reinis Vicups
In the attached FooBar project attempt to fire an CDI event in BaringController
lead to infinite loop with the following StackOverflowError.
My assumption is that the configuration of observer method (Async, requires new
transaction and AFTER_SUCCESS transaction phase) in FooEventHandler cause this,
although I haven't tested this with simplified config (e.g. no Async and no
Transaction annotations).
SEVERE - EjbTransactionUtil.handleSystemException: null
java.lang.StackOverflowError
at java.lang.Class.cast(Class.java:3004)
at
org.apache.webbeans.config.WebBeansContext.getService(WebBeansContext.java:187)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
at
org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:83)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira