[JBoss JIRA] (JBTM-3296) LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
by Ondrej Chaloupka (Jira)
[ https://issues.redhat.com/browse/JBTM-3296?page=com.atlassian.jira.plugin... ]
Ondrej Chaloupka updated JBTM-3296:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Duplicate
> LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
> ---------------------------------------------------------------------------------
>
> Key: JBTM-3296
> URL: https://issues.redhat.com/browse/JBTM-3296
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: Quickstarts
> Reporter: Ondrej Chaloupka
> Assignee: Ondrej Chaloupka
> Priority: Major
>
> The quickstarts {{lra-test}} fails as the {{TripController}} is annotated with the {{@LRA}} but it does not define neither {{@Compensate}} nor {{@AfterLRA}} method.
> See https://github.com/eclipse/microprofile-lra/issues/244
> Failure is
> {code}
> 2020-04-17 01:49:26,020 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.deployment.unit."lra-test.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."lra-test.war".WeldStartService: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1730)
> at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
> at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
> Exception 0 :
> java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> at org.jboss.weld.util.Observers.notify(Observers.java:166)
> at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
> at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
> at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
> at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
> at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
> at java.lang.Thread.run(Thread.java:748)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
> at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
> at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
> at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
> ... 6 more
> Suppressed: java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> at org.jboss.weld.util.Observers.notify(Observers.java:166)
> at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> ... 12 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3247) Failed LRA records are reported but they not kept
by Michael Musgrove (Jira)
[ https://issues.redhat.com/browse/JBTM-3247?page=com.atlassian.jira.plugin... ]
Issue was automatically transitioned when Michael Musgrove created pull request #1603 in GitHub
-----------------------------------------------------------------------------------------------
Status: Pull Request Sent (was: Coding In Progress)
> Failed LRA records are reported but they not kept
> -------------------------------------------------
>
> Key: JBTM-3247
> URL: https://issues.redhat.com/browse/JBTM-3247
> Project: JBoss Transaction Manager
> Issue Type: Enhancement
> Components: LRA
> Affects Versions: 5.10.3.Final
> Reporter: Michael Musgrove
> Assignee: Michael Musgrove
> Priority: Blocker
> Fix For: 5.next
>
>
> When an LRA is closed/cancelled and some participants will never be able to complete/compensate then they are placed on the [BasicAction] failedList. The MP-LRA spec only requires that such failures are logged. The narayana implementation does indeed log the failure (using a log WARNING statement) but then removes the transaction record from the object store.
> It would be preferable to leave failed LRA's in the store and allow them to be queried and deleted using the REST coordinator (like we do for recovering LRA's).
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3298) Check that LRA participants are called in reverse order if there are no retries
by Michael Musgrove (Jira)
Michael Musgrove created JBTM-3298:
--------------------------------------
Summary: Check that LRA participants are called in reverse order if there are no retries
Key: JBTM-3298
URL: https://issues.redhat.com/browse/JBTM-3298
Project: JBoss Transaction Manager
Issue Type: Task
Components: LRA
Affects Versions: 5.10.4.Final
Reporter: Michael Musgrove
Assignee: Michael Musgrove
Fix For: 5.next
The LRA spec says that under non failure conditions LRA participants SHOULD be called in reverse order of there enlistment. Note that if retries are required then those participants will be processed out of order (which is fine since the spec does not preclude this).
This JIRA is asking for a test for this behaviour and to provide a fix if they aren't called in reverse order.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3297) Move LRA failure records to another part of the store
by Michael Musgrove (Jira)
Michael Musgrove created JBTM-3297:
--------------------------------------
Summary: Move LRA failure records to another part of the store
Key: JBTM-3297
URL: https://issues.redhat.com/browse/JBTM-3297
Project: JBoss Transaction Manager
Issue Type: Enhancement
Components: LRA
Affects Versions: 5.10.4.Final
Reporter: Michael Musgrove
Assignee: Michael Musgrove
Fix For: 5.next
Prior to JBTM-3247 we deleted LRA failure records (after reporting them). With the fix for JBTM-3247 we now retain failure records which can impact processing of the transaction logs. These records should be moved to another part of the store (note that they can still be queried and deleted by the user).
I have marked the priority as optional even though it is highly desirable.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3296) LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
by Ondrej Chaloupka (Jira)
[ https://issues.redhat.com/browse/JBTM-3296?page=com.atlassian.jira.plugin... ]
Ondrej Chaloupka updated JBTM-3296:
-----------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/jbosstm/quickstart/pull/276
> LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
> ---------------------------------------------------------------------------------
>
> Key: JBTM-3296
> URL: https://issues.redhat.com/browse/JBTM-3296
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: Quickstarts
> Reporter: Ondrej Chaloupka
> Assignee: Ondrej Chaloupka
> Priority: Major
>
> The quickstarts {{lra-test}} fails as the {{TripController}} is annotated with the {{@LRA}} but it does not define neither {{@Compensate}} nor {{@AfterLRA}} method.
> See https://github.com/eclipse/microprofile-lra/issues/244
> Failure is
> {code}
> 2020-04-17 01:49:26,020 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.deployment.unit."lra-test.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."lra-test.war".WeldStartService: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1730)
> at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
> at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
> Exception 0 :
> java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> at org.jboss.weld.util.Observers.notify(Observers.java:166)
> at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
> at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
> at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
> at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
> at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
> at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
> at java.lang.Thread.run(Thread.java:748)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
> at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
> at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
> at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
> ... 6 more
> Suppressed: java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> at org.jboss.weld.util.Observers.notify(Observers.java:166)
> at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> ... 12 more
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3296) LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
by Ondrej Chaloupka (Jira)
Ondrej Chaloupka created JBTM-3296:
--------------------------------------
Summary: LRA trip quickstart fails as the @LRA class does not define @Compensate/@AfterLRA
Key: JBTM-3296
URL: https://issues.redhat.com/browse/JBTM-3296
Project: JBoss Transaction Manager
Issue Type: Bug
Components: Quickstarts
Reporter: Ondrej Chaloupka
Assignee: Ondrej Chaloupka
The quickstarts {{lra-test}} fails as the {{TripController}} is annotated with the {{@LRA}} but it does not define neither {{@Compensate}} nor {{@AfterLRA}} method.
See https://github.com/eclipse/microprofile-lra/issues/244
Failure is
{code}
2020-04-17 01:49:26,020 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.deployment.unit."lra-test.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."lra-test.war".WeldStartService: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1730)
at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
at org.jboss.weld.util.Observers.notify(Observers.java:166)
at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
at java.lang.Thread.run(Thread.java:748)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:75)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:456)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
... 6 more
Suppressed: java.lang.IllegalStateException: io.narayana.rts.lra.demo.tripcontroller.TripController : The class contains an LRA method and no Compensate or AfterLRA method was found.
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
at org.jboss.weld.injection.MethodInvocationStrategy$SpecialParamPlusBeanManagerStrategy.invoke(MethodInvocationStrategy.java:144)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
at org.jboss.weld.util.Observers.notify(Observers.java:166)
at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
... 12 more
{code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months
[JBoss JIRA] (JBTM-3295) LRACDIExtension returns null as class name when @LRA annotated class does not contain Compensate or AfterLRA
by Ondrej Chaloupka (Jira)
[ https://issues.redhat.com/browse/JBTM-3295?page=com.atlassian.jira.plugin... ]
Ondrej Chaloupka updated JBTM-3295:
-----------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/jbosstm/narayana/pull/1602
> LRACDIExtension returns null as class name when @LRA annotated class does not contain Compensate or AfterLRA
> ------------------------------------------------------------------------------------------------------------
>
> Key: JBTM-3295
> URL: https://issues.redhat.com/browse/JBTM-3295
> Project: JBoss Transaction Manager
> Issue Type: Bug
> Components: LRA
> Reporter: Ondrej Chaloupka
> Assignee: Ondrej Chaloupka
> Priority: Minor
>
> When the {{@LRA}} annotated class does not containe neither {{@Compensate}} nor {{@AfterLRA}} the exception message contains {{null}} instead of the name of the guilty class.
> {code}
> Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
> Exception 0 :
> java.lang.IllegalStateException: null: The class contains an LRA method and no Compensate or AfterLRA method was found.
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.isLRAParticipant(LRACDIExtension.java:129)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.getAsParticipant(LRACDIExtension.java:104)
> at io.narayana.lra.client.internal.proxy.nonjaxrs.LRACDIExtension.observe(LRACDIExtension.java:75)
> {code}
> The reason seems to be that the method {{ClassInfo.simpleName()}} returns null if it's not an inner class or nested class.
> The javadoc says following on it
> {code}
> Returns the source declared name of this class if it is an inner class, or a local class. Otherwise
> this method will return null.
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
4 years, 8 months