2015-08-25 17:31 GMT+02:00 John D. Ament <john.d.ament@gmail.com>:


On Tue, Aug 25, 2015 at 9:51 AM Nigel Deakin <nigel.deakin@oracle.com> wrote:
On 24/08/2015 21:24, John D. Ament wrote:
>
> Hi Nigel!
>
> Glad to hear from you.  Was wondering, is there a way to manually register listeners?

The current proposal is is for the bean to start listening just as soon as it is created (by CDI), and for it to stop
listening just before it is destroyed (by CDI).

As you suggesting that CDI would create the listener, but the application would call some method to tell it to start
listening? or did you have something else in mind?


Hmm, this would mean that only app scoped beans would apply?
It might be better to scan for the annotations and use that to start up the listener?
 

Does it mean anything to have a request scope or session scope listener? I see technically how it can be done but I dont see any case needing it but I feel it can hurt a lot to support it for anything else than PoC - ie in prod, no?
 

 > It would be great if this could
> be leveraged in a CDI SE environment as well as EE environment.

I see that work is underway for CDI 2.0 to define how CDI might work in a Java SE environment. I don't see why a similar
portable extension could not be created for use in Java SE. Since there would be no need to support Java EE behaviour
such as transactions this could be built directly on top of the JMS provider's Java SE client. No need to use a resource
adapter. However since the @JMSListener and @JMSConnectionFactory annotations use JNDI there would be a need to be a way
to specify which JNDI InitialContext to use. I'm not proposing any of this at the moment, but it might perhaps be
something that we (the JMS expert group) could consider later on as a optional part of JMS 2.1.

There's also the Java EE application client to consider.

Nigel


_______________________________________________
cdi-dev mailing list
cdi-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/cdi-dev

Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (http://www.apache.org/licenses/LICENSE-2.0.html). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.