@Romain Thanks, makes me understand it more.
You scare me little when you say "normally". In what cases does it not? Regards Lars-Fredrik On 27 Aug 2014 08:30, "Romain Manni-Bucau" <[email protected]> wrote: > normally yes > > > Romain Manni-Bucau > Twitter: @rmannibucau > Blog: http://rmannibucau.wordpress.com/ > LinkedIn: http://fr.linkedin.com/in/rmannibucau > Github: https://github.com/rmannibucau > > > 2014-08-27 8:00 GMT+02:00 Lars-Fredrik Smedberg <[email protected]>: > > Good to know... > > > > So in the case no CDI-proxy is created the EJB-proxy will also run the > > CDI-interceptors? > > > > I read that any EJB-interceptors will run after any tx has started (the > EJB > > or EJB-method is annotated with @TransactionAttribute). > > > > In the case of an CDI-proxy I assume that any CDI-interceptors will run > > before the tx is started, is that the case? > > > > In the case of the CDI-interceptors being run by the EJB-proxy will they > > then also run beefore the tx is started? > > > > Hope you can clarify the above, would help me alot. > > > > Thanks > > Lars-Fredrik > > > > > > > > > > On Wed, Aug 27, 2014 at 6:56 AM, Romain Manni-Bucau < > [email protected]> > > wrote: > > > >> It works but it is handled by the ejb itself, not cdi > >> Le 26 août 2014 21:53, "Lars-Fredrik Smedberg" <[email protected]> a > >> écrit : > >> > >> > @Romain > >> > > >> > I though that I could @Inject an EJB and apply CDI-interceptors to the > >> EJB > >> > or methods on it. > >> > > >> > Reading your answer it seems like I only can do that if the injceted > EJB > >> is > >> > a scoped stateful EJB because in other cases no CDI-proxy is > created.... > >> > > >> > Did I get that right or did I misunderstand you? > >> > > >> > Thanks > >> > Lars-Fredrik > >> > > >> > > >> > On Tue, Aug 26, 2014 at 10:46 PM, Romain Manni-Bucau < > >> > [email protected]> > >> > wrote: > >> > > >> > > no only for scoped stateful. for singleton/stateless you get the ejb > >> > > proxy directly > >> > > > >> > > > >> > > Romain Manni-Bucau > >> > > Twitter: @rmannibucau > >> > > Blog: http://rmannibucau.wordpress.com/ > >> > > LinkedIn: http://fr.linkedin.com/in/rmannibucau > >> > > Github: https://github.com/rmannibucau > >> > > > >> > > > >> > > 2014-08-26 21:10 GMT+02:00 Lars-Fredrik Smedberg < > [email protected]>: > >> > > > Sorry for that, ofcourse I meant @Stateful, that was what we > >> discussed > >> > in > >> > > > the previous posts :) > >> > > > > >> > > > Thinking of the CDI proxy in front of the EJB proxy makes it > easier > >> to > >> > > > understand what is going on under the hood. > >> > > > > >> > > > A follow up question: > >> > > > > >> > > > - Will a CDI proxy always be created in front of the EJB proxy if > the > >> > EJB > >> > > > is injected using @Inject? Or is that also the case when using > @EJB? > >> I > >> > > > guess even for dependent scoped CDI beans a proxy is used to be > able > >> to > >> > > > trigger interceptors etc. > >> > > > > >> > > > > >> > > > Regards > >> > > > LF > >> > > > > >> > > > > >> > > > On Tue, Aug 26, 2014 at 7:06 PM, Romain Manni-Bucau < > >> > > [email protected]> > >> > > > wrote: > >> > > > > >> > > >> replace @Stateless by @Stateful and it is that > >> > > >> > >> > > >> cdi scope is just a proxy in front of ejb proxy > >> > > >> > >> > > >> > >> > > >> Romain Manni-Bucau > >> > > >> Twitter: @rmannibucau > >> > > >> Blog: http://rmannibucau.wordpress.com/ > >> > > >> LinkedIn: http://fr.linkedin.com/in/rmannibucau > >> > > >> Github: https://github.com/rmannibucau > >> > > >> > >> > > >> > >> > > >> 2014-08-26 17:54 GMT+02:00 Lars-Fredrik Smedberg < > >> [email protected] > >> > >: > >> > > >> > Thanks for the answer. > >> > > >> > > >> > > >> > So to summarize the scoping rules from CDI apply and the > >> concurrency > >> > > >> > management from EJB apply when combining @Stateless and any of > the > >> > > >> > @NormalScopes... > >> > > >> > > >> > > >> > Regards > >> > > >> > Lars-Fredrik > >> > > >> > On 26 Aug 2014 16:50, "Romain Manni-Bucau" < > [email protected] > >> > > >> > > >> wrote: > >> > > >> > > >> > > >> >> Hi > >> > > >> >> > >> > > >> >> 2014-08-26 16:45 GMT+02:00 Lars-Fredrik Smedberg < > >> > [email protected] > >> > > >: > >> > > >> >> > Hi > >> > > >> >> > > >> > > >> >> > I have a few questions on EJB, CDI and Concurrency when I > read > >> > > >> >> > > >> > http://tomee.apache.org/examples-trunk/access-timeout/README.html, > >> > > I > >> > > >> >> read > >> > > >> >> > > >> > > >> >> > - Concurrent access to a @Stateful bean is serialized by the > >> > > >> container. > >> > > >> >> > > >> > > >> >> > I also understand that I can annotate the EJBs with any of > the > >> > > >> CDI-scopes > >> > > >> >> > (in my case I'm interested in @RequestScoped, @SessionScoped > >> and > >> > > >> >> > @ApplicationScoped). > >> > > >> >> > > >> > > >> >> > Questions: > >> > > >> >> > > >> > > >> >> > 1. If I annotate the @Stateful bean with @RequestScoped I > >> assume > >> > > that > >> > > >> I > >> > > >> >> get > >> > > >> >> > a separate bean instance for each call? Correct? > >> > > >> >> > >> > > >> >> yes > >> > > >> >> > >> > > >> >> > 2. If I annotate the @Stateful bean with @SessionScoped I > >> assume > >> > > that > >> > > >> I > >> > > >> >> per > >> > > >> >> > sesion get a separate bean instance that allows concurrent > >> calls > >> > > >> withing > >> > > >> >> > that particular session without wait? Correct? > >> > > >> >> > >> > > >> >> you get one instance by session and calls are serialized if > >> needed > >> > to > >> > > >> >> ensure thread safety > >> > > >> >> > >> > > >> >> > 3. If I annotate the @Stateful bean with @ApplicationScoped > I > >> > > assume > >> > > >> >> that I > >> > > >> >> > per application get one bean instance that allows concurrent > >> > calls > >> > > >> >> without > >> > > >> >> > wait? Correct? > >> > > >> >> > > >> > > >> >> > >> > > >> >> same as before, thread safety is ensured > >> > > >> >> > >> > > >> >> > The reason I ask is that as far as I understand CDI does not > >> have > >> > > any > >> > > >> >> > concurrency management but the EJB has. What will be the > case > >> > when > >> > > >> doing > >> > > >> >> as > >> > > >> >> > above? > >> > > >> >> > > >> > > >> >> > Please help me get some in-depth understanding on this. > >> > > >> >> > > >> > > >> >> > >> > > >> >> for @AppScoped => look @javax.ejb.Singleton and @Lock which is > >> > surely > >> > > >> >> better > >> > > >> >> > >> > > >> >> > Thanks > >> > > >> >> > Lars-Fredrik Smedberg > >> > > >> >> > > >> > > >> >> > > >> > > >> >> > > >> > > >> >> > -- > >> > > >> >> > Med vänlig hälsning / Best regards > >> > > >> >> > > >> > > >> >> > Lars-Fredrik Smedberg > >> > > >> >> > > >> > > >> >> > STATEMENT OF CONFIDENTIALITY: > >> > > >> >> > The information contained in this electronic message and any > >> > > >> >> > attachments to this message are intended for the exclusive > use > >> of > >> > > the > >> > > >> >> > address(es) and may contain confidential or privileged > >> > > information. If > >> > > >> >> > you are not the intended recipient, please notify > Lars-Fredrik > >> > > >> Smedberg > >> > > >> >> > immediately at [email protected], and destroy all copies > of > >> > this > >> > > >> >> > message and any attachments. > >> > > >> >> > >> > > >> > >> > > > > >> > > > > >> > > > > >> > > > -- > >> > > > Med vänlig hälsning / Best regards > >> > > > > >> > > > Lars-Fredrik Smedberg > >> > > > > >> > > > STATEMENT OF CONFIDENTIALITY: > >> > > > The information contained in this electronic message and any > >> > > > attachments to this message are intended for the exclusive use of > the > >> > > > address(es) and may contain confidential or privileged > information. > >> If > >> > > > you are not the intended recipient, please notify Lars-Fredrik > >> Smedberg > >> > > > immediately at [email protected], and destroy all copies of this > >> > > > message and any attachments. > >> > > > >> > > >> > > >> > > >> > -- > >> > Med vänlig hälsning / Best regards > >> > > >> > Lars-Fredrik Smedberg > >> > > >> > STATEMENT OF CONFIDENTIALITY: > >> > The information contained in this electronic message and any > >> > attachments to this message are intended for the exclusive use of the > >> > address(es) and may contain confidential or privileged information. If > >> > you are not the intended recipient, please notify Lars-Fredrik > Smedberg > >> > immediately at [email protected], and destroy all copies of this > >> > message and any attachments. > >> > > >> > > > > > > > > -- > > Med vänlig hälsning / Best regards > > > > Lars-Fredrik Smedberg > > > > STATEMENT OF CONFIDENTIALITY: > > The information contained in this electronic message and any > > attachments to this message are intended for the exclusive use of the > > address(es) and may contain confidential or privileged information. If > > you are not the intended recipient, please notify Lars-Fredrik Smedberg > > immediately at [email protected], and destroy all copies of this > > message and any attachments. >
