-
Bug
-
Resolution: Done
-
Major
-
None
-
None
LRA deployed on WFLY as war does utilize the abilities provided by Jandex annotation indexing.
From technical prespective the ClassPathIndexer#createIndex (https://github.com/jbosstm/narayana/blob/5.9.10.Final/rts/lra/lra-proxy/api/src/main/java/io/narayana/lra/client/internal/proxy/nonjaxrs/ClassPathIndexer.java#L25) creates empty index and any further operations pass without any action.
This is for example problematic for deployment time when non-JAXRS LRA prerequisites are checked - e.g. the @LRA annotated class needs to contain either @Compenstate or @AfterLRA otherwise deployment is not permitted (defined by spec, ie. LRA TCK fails with LRA WildFly war currently).
The issue is that the Jandex indexer looks for system class loader and checks what's on classpath. But WFLY classloading works differently and classes are loaded by definitions driven by module class loader (ie. you can find only jboss-modules.jar on classpath).