Thanks John. I going to test it tomorrow I hope...

Currently I have it like:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd";
    version="1.2" bean-discovery-mode="annotated">

    <alternatives>

<class>org.apache.deltaspike.jpa.impl.transaction.ContainerManagedTransactionStrategy</class>
    </alternatives>

</beans>

which as you pointed out might not work.
I also do my TX demarcation at the service level (business logic). A
Service can use multiple repos, jms, ...
Repo should only concern about persisting and querying data.

Regards,
LA

On Tue, Feb 6, 2018 at 9:44 PM, John D. Ament <[email protected]> wrote:

> Hi,
>
> Yes, Mark's input is definitely useful.  I can say I've been using DS +
> Repositories + JTA Transactional for a few years now, it all continues to
> work fine.  I'm on Wildfly 10.1 as well.
>
> The only thing you need to remember is to
> add globalAlternatives.org.apache.deltaspike.jpa.spi.transaction.
> TransactionStrategy=org.apache.deltaspike.jpa.impl.transaction.
> ContainerManagedTransactionStrategy
> to your META-INF/apache-deltaspike.properties file.  This is covered at
> http://deltaspike.apache.org/documentation/jpa.html#JTASupport for
> Weld/Wildfly instances
>
> Then you'll get the seamless transactions between DS repositories, other
> JPA use cases, and JMS, etc.  Presently I deal with the JMS + SMTP  + JPA
> use case today and haven't seen it falter too much.
>
> I don't add @Transactional to my repositories, the transaction boundary
> tends to be at a higher level (Services).
>
> John
>
> On Tue, Feb 6, 2018 at 3:41 PM Luís Alves <[email protected]> wrote:
>
> > I want to use DS repositories, that's why I've asked about Transactional.
> > As I use Wildfly 10, I can use the standard Transactional instead of the
> DS
> > one.
> > @Mark: thanks for your point of view. I wan't to stay as standard as
> > possible, but if I have strange behaviors I'll switch for DS annotation.
> > Tomorrow I have to deal with some JMS configs, but I'll try to do some
> > testing until the end of this week. I was out for a month and my
> colleagues
> > are injecting the EntityManager into the @Repositories, because they had
> > some issues with the TX. I suspect that, this is not a good idea, as DS
> > repositories should own their own EntityManager instance.
> >
> > Regards
> >
> > On Tue, Feb 6, 2018 at 8:20 PM, Mark Struberg <[email protected]
> >
> > wrote:
> >
> > > Hi!
> > >
> > > Please note that @javax.transaction.Transactional and deltaspike
> > > @Transactional work pretty different under the hood.
> > >
> > > With javax.transaction.Transactional you will get the weird
> transaction
> > > handling of EJB [1].
> > > It's also not that portable as it seems. There are huge definition gaps
> > in
> > > the tx spec as well. E.g. whether you can catch Exceptions, transaction
> > > boundaries etc.
> > >
> > > Needless to say I'm not a fan of javax.transaction.Transactional ;)
> > >
> > > LieGrue,
> > > strub
> > >
> > >
> > > [1] https://struberg.wordpress.com/2015/04/21/transaction-
> > > and-exception-handling-in-ejbs-and-javaee7-transactional/
> > >
> > >
> > > > Am 06.02.2018 um 20:38 schrieb Mauro Chi <[email protected]>:
> > > >
> > > > If you use wildfly10 it came with jeee7 that already   came with
> > > > annotation@Transactional.
> > > >
> > > > So if you use wildfy 10 you dont have to use  deltaspike.
> > > > Mauro
> > > >
> > > > Il 6 feb 2018 19:31, "Luís Alves" <[email protected]> ha
> scritto:
> > > >
> > > >> Left the office already...It's wildfly 10 dot something. I'll give
> the
> > > >> exact version and strategy used tomorrow.
> > > >>
> > > >> Regards
> > > >>
> > > >> Em 06/02/2018 18:11, "John D. Ament" <[email protected]>
> > escreveu:
> > > >>
> > > >>> Yes, in general javax.transaction.Transactional works well.
> > Depending
> > > >> on
> > > >>> your server, you may need to just point to the container managed
> > > >>> transaction approach.  What container are you deploying to
> (including
> > > >>> version)?
> > > >>>
> > > >>> On Tue, Feb 6, 2018 at 12:37 PM Luís Alves <[email protected]>
> > > >> wrote:
> > > >>>
> > > >>>> Will deltaspike work with javax.transaction.Transactional?
> > > >>>> Do I need to specify an interceptor?
> > > >>>> Where can I find an example?
> > > >>>>
> > > >>>
> > > >>
> > >
> > >
> >
>

Reply via email to