Stuart,
Let me check if I understand you correctly...
I have a module "org.jboss.jts" that applications using my portable extension depend upon.
I've put the PE file in the module jar. See here:
unzip -l modules/system/layers/base/org/jboss/jts/main/narayana-jts-jacorb-5.0.0.M3-SNAPSHOT.jar | grep META-INF | grep -v maven
0 05-24-13 15:01 META-INF/
656 05-24-13 15:01 META-INF/MANIFEST.MF
49 05-24-13 15:24 META-INF/services/javax.enterprise.inject.spi.Extension
0 05-24-13 16:02 META-INF/beans.xml
The contents of META-INF/services/javax.enterprise.inject.spi.Extension, contains just "com.arjuna.ats.jta.cdi.TransactionScopedExtension".
I've put breakpoints on the methods in "com.arjuna.ats.jta.cdi.TransactionScopedExtension" and they are never invoked.
Are you able to correct my understanding?
Much appreciated,
Paul.
No, you should just need to add the module with the META-INF/services entry as a dependency. If it is a Weld deployment then it will pick it up.
Stuart
Paul Robinson wrote:
Stuart,
That's great, thanks a lot. I'll keep an eye on the PR.
Also, won't I still need to use the WeldDeploymentMarker?
Paul.
On 22 May 2013, at 01:38, Stuart Douglas <stuart.w.douglas@gmail.com
<mailto:stuart.w.douglas@gmail.com>> wrote:
I have been meaning to change the way these are registered for some time:
https://github.com/wildfly/wildfly/pull/4535
Now it should just be a matter of adding a dependency with a services
import on the relevant module.
Stuart
Paul Robinson wrote:
Stuart,
The problem with this approach is that I need to introduce a dependency
on org.jboss.as:jboss-as-weld, which depends on
org.jboss.as:jboss-as-transactions. This introduces a cyclic dependency.
org.jboss.as:jboss-as-weld is needed for the WeldDeploymentMarker and to
use WeldAttachments.PORTABLE_EXTENSIONS.
You can do this for every deployment, if beans.xml is not present it
won't do anything
I assume this is done by the three tests at the top of the deploy
method? Therefore, I would need to use WeldDeploymentMarker.
you basically just need to attach it under
org.jboss.as.weld.deployment.WeldAttachments#PORTABLE_EXTENSIONS for
the top level deployment.
Again, I can't do this without access to
WeldAttachments.PORTABLE_EXTENSIONS.
To break this cycle, I think I would need to create a new maven module
and subsytem called, for example, transactions-cdi. This seems a bit
over-kill. Is there an alternative you can think of?
Thanks,
Paul.
On 14 May 2013, at 10:15, Stuart Douglas <sdouglas@redhat.com
<mailto:sdouglas@redhat.com>> wrote:
Registering it in a DUP in the transactions subsystem is fine.
Have a look in
org.jboss.as.weld.deployment.processors.WeldPortableExtensionProcessor#loadAttachments
for an example of what you need to do, you basically just need to
attach it under
org.jboss.as.weld.deployment.WeldAttachments#PORTABLE_EXTENSIONS for
the top level deployment.
You can do this for every deployment, if beans.xml is not present it
won't do anything.
Stuart
Paul Robinson wrote:
Stuart (wildfly-dev in CC too)
I'm implementing JTA 1.2, and part of it is to develop a new CDI
context. I'm currently registering that via an Extension in the
javax.enterprise.inject.spi.Extension file. The problem with this is
that this is a burden on the application developer. Alternatively, I
could register it in a DUP in the transactions subsytem. I'd probably
have to register it for every deployment, as I don't think I can detect
if it's needed.
@pmuir said that you would probably know what I should do.
Thanks,
Paul.
--
Paul Robinson
Web Service Transactions Lead
paul.robinson@redhat.com <mailto:paul.robinson@redhat.com>
<mailto:paul.robinson@redhat.com>
JBoss, a Division of Red Hat
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham (USA), Brendan Lane (Ireland), Matt
Parson
(USA), Charlie Peters (USA)
--
Paul Robinson
Web Service Transactions Lead
paul.robinson@redhat.com <mailto:paul.robinson@redhat.com>
JBoss, a Division of Red Hat
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham (USA), Brendan Lane (Ireland), Matt Parson
(USA), Charlie Peters (USA)
_______________________________________________
wildfly-dev mailing list
wildfly-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev
--
Paul Robinson
Web Service Transactions Lead
paul.robinson@redhat.com <mailto:paul.robinson@redhat.com>
JBoss, a Division of Red Hat
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham (USA), Brendan Lane (Ireland), Matt Parson
(USA), Charlie Peters (USA)
--
Paul Robinson
Web Service Transactions Lead
paul.robinson@redhat.comJBoss, a Division of Red Hat
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham (USA), Brendan Lane (Ireland), Matt Parson
(USA), Charlie Peters (USA)