Description
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)