You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tamaya.apache.org by ajs6f <aj...@apache.org> on 2018/08/23 20:00:31 UTC
Tamaya CDI question
Hi, Tamaya-folks!
I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey 2.27) and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm running into an odd problem.
I'm not seeing TamayaCDIInjectionExtension properly initialized as a CDI extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension show up and get initialized. So when my bean wirings are validated, injection points with a @Config @Inject are failing because CDI doesn't know to go to Tamaya for such injections.
Has anyone seen anything like this? I can certainly put my current branch up somewhere if that would be useful. My javax.enterprise.inject.spi.Extension is as simple as:
# Register Tamaya to perform injection
org.apache.tamaya.cdi.TamayaCDIAccessor
org.apache.tamaya.cdi.TamayaCDIInjectionExtension
but only one of those guys seems to come to life! :grin:
ajs6f
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
> It very well could. Weld had some major changes in classloading to support
> Java 9 and up. There could be a regression issue there.
>
> John
I see-- sneaky of them to do that in a micro release! I will test further with different versions and report back.
ajs6f
> On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org> wrote:
>
> On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
>
>> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>>
>> # Register Tamaya to perform injection
>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>>
>> and now no extension from Tamaya is registered at all! I _do_ see various
>> beans being registered, e.g.
>>
>> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext log
>> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap - WELD-000106:
>> Bean: Producer Method [Object] with qualifiers [@Config @Any] declared as
>> [[BackedAnnotatedMethod] @Produces @Config public
>> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>>
>> It looks like the Tamaya example is using Weld 3.0.1.Final as opposed to
>> my Weld 3.0.5.Final, but I can't imagine that would make any difference.
>>
>
>
> It very well could. Weld had some major changes in classloading to support
> Java 9 and up. There could be a regression issue there.
>
> John
>
>
>> ajs6f
>>
>>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com> wrote:
>>>
>>> Hi!
>>>
>>> As far as I see there is no registration for the CDI extension present.
>>> Look at our test case for an example:
>>>
>> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>>>
>>>
>>> Give ad a hint if that solved your problem...😊
>>>
>>> Best, Anatole
>>>
>>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>>>
>>>> Hi, Anatole--
>>>>
>>>> Thank you very much! Please find my branch here:
>>>>
>>>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>>>
>>>> and the bean field where I'm using @Config is here:
>>>>
>>>>
>>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>>>
>>>> I'm sorry for the somewhat chaotic code-- this is a very experimental
>>>> project, although of course CDI and JAX-RS are not the experimental
>> part.
>>>>
>>>> Please let me know what more info would be useful, and thank you for
>> your
>>>> help! (If you would like some log output, I can certainly package that
>> up
>>>> somewhere for you.)
>>>>
>>>> ajs6f
>>>>
>>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
>> wrote:
>>>>>
>>>>> Thanks for your mail. Basically the extension must load properly for
>>>> Tamaya
>>>>> CDI to work. If you can provide some kind of sample project it would be
>>>>> perfect and I am happy to help.
>>>>>
>>>>> J Anatole
>>>>>
>>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>>>
>>>>>> Hi, Tamaya-folks!
>>>>>>
>>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
>>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
>>>> 2.27)
>>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
>>>>>> running into an odd problem.
>>>>>>
>>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a
>> CDI
>>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
>>>> show up
>>>>>> and get initialized. So when my bean wirings are validated, injection
>>>>>> points with a @Config @Inject are failing because CDI doesn't know to
>>>> go to
>>>>>> Tamaya for such injections.
>>>>>>
>>>>>> Has anyone seen anything like this? I can certainly put my current
>>>> branch
>>>>>> up somewhere if that would be useful. My
>>>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>>>
>>>>>> # Register Tamaya to perform injection
>>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>
>>>>>> but only one of those guys seems to come to life! :grin:
>>>>>>
>>>>>> ajs6f
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
William and all--
I'm sorry this reply is so late; it was the long weekend here in the States and some urgent stuff at $work.
Firstly, thanks William very much! Your advice was wonderfully helpful. I had been tinkering along after I wrote my last email and I had come to what I think is the same as your first conclusion: that it's worth investing in some framework to wire up CDI and JAX-RS instead of wrestling them oneself. I had already chosen Thorntail (Wildfly Swarm) and had a semi-working example, in which JAX-RS and CDI and Tamaya were all starting correctly up together. But I just couldn't find anything but nulls in my @Config-ured fields. Sounds familiar? :) But it hadn't occurred to me at all that constructor and field injection couldn't be ordered as I would need-- I should have realized that if the constructor hadn't run, how would the CDI impl code get a reference to an object to inject? I hadn't done the reading I should have. Your second point about the injection schedule got me working. (It's the main branch in that repo now.)
Now that I understand what was happening, I see that there is no test case here; I've submitted a doc patch via Github.
Thanks again-- I have a working application using Tamaya now.
ajs6f
> On Sep 1, 2018, at 8:33 AM, William Lieurance <wi...@namikoda.com> wrote:
>
> Hi there,
>
> I've got some seemingly working code based on your branch at https://github.com/ajs6f/trellis-cassandra-webapp/compare/TamayaConfig...peculater:TamayaConfig . Take a look and tell me what you think.
>
> The problems I noticed are in two areas. The first one is the most frustrating to me, and is the one you alluded to in your most recent email. Namely, balancing all of the CDI providers and consumers when spanning weld, jersey-cdi1x, JSF, the different -servlet packages, all their express and implied dependencies, and finally version conflicts, is really hard and often subtly broken. For most of the tests that we run on CDI in managed contexts, we default to some pre-packaged combos with Arquillian. While that is somewhat heavier weight, it comes with the notable benefit of wiring up CDI with way fewer surprises and generally less work. If you're not big on EE, the various "microprofile" servers do just CDI+JaxRS+Json which sounds like it might be useful if for no other reason than it's clear which versions of which maven artifacts work together.
>
> The second place I spent some time was looking at why using the "cassandraHostAddy" variable at https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L80 wasn't actually providing any data, nor did it seem like dependency injection was ever getting called at all. The answer there is in Weld's documentation at https://docs.jboss.org/weld/reference/latest/en-US/html/injection.html section 4.1. The important part is:
>
>> Dependency injection always occurs when the bean instance is first instantiated by the container. Simplifying just a little, things happen in this order:
>>
>> First, the container calls the bean constructor (the default constructor or the one annotated @Inject), to obtain an instance of the bean.
>> Next, the container initializes the values of all injected fields of the bean.
>
> Note that any bean, including the @ApplicationScope CassandraSession from your example has to have its constructor called before any fields get injected. That means references to the injected fields in the constructor necessarily come back null, and if those fields are never referenced again it might look like the injection never took place at all. I've got an example of how to get Configuration object out of CDI in the constructor in that diff, but it's more than an annotation. Moving the call to cassandraHostAddy out of the constructor and giving it a default value made it work for me.
>
> There is still some weirdness around missing Integer converters that I was never able to pin down, but I really think that has to do with problem one above.
>
> I hope this helps!
>
> --William
>
> ________________________________________
> From: ajs6f <aj...@apache.org>
> Sent: Wednesday, August 29, 2018 10:07 AM
> To: dev@tamaya.incubator.apache.org
> Subject: Re: Tamaya CDI question
>
> Just as an update, I was able to get tamaya-cdi working with Weld 3.0.5.Final in a setup driven by Pax Exam (no complications from JAX-RS or servlet containers), so I don't think it's a problem with that version of Weld. I will now try building back up towards my real problem to hopefully find the relevant condition that stops Tamaya's CDI extensions from loading.
>
> ajs6f
>
>> On Aug 28, 2018, at 2:28 PM, Anatole Tresch <at...@gmail.com> wrote:
>>
>> Awesome👍
>>
>> <aj...@apache.org> schrieb am Di., 28. Aug. 2018, 19:56:
>>
>>> More than ok-- I am really grateful. You are surely correct that it is a
>>> very simple project, but I will keep tinkering and see if I can set up a
>>> more minimal example that could evolve into a test case if needed.
>>>
>>> Thanks!
>>>
>>> ajs6f
>>>
>>> On Mon, Aug 27, 2018, 3:36 PM Anatole Tresch <at...@gmail.com> wrote:
>>>
>>>> OK. somehow sounds a it tricky. Good thing is, your example is really
>>>> pretty simple. I am happy to look into further and play around with it as
>>>> well, but I will not have a chance to do so before end of week, because I
>>>> am completely absorbed with education and work...
>>>> If someone else can have a look a it beforehand, I would be pretty happy
>>> as
>>>> well ;-)
>>>>
>>>> OK for you?
>>>>
>>>> Best Anatole
>>>>
>>>> Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
>>>>
>>>>> Okay, it doesn't seem to be a version problem, or at least I could get
>>> no
>>>>> different result working with Weld 3.0.1.Final.
>>>>>
>>>>> I also tried adding an org.apache.tamaya.spi.ServiceContext file in
>>>>> META-INF/services containing just:
>>>>>
>>>>> org.apache.tamaya.cdi.CDIAwareServiceContext
>>>>>
>>>>> because I saw that done in the Tamaya CDI module code, as well as every
>>>>> possible combination of different entries in
>>>>> javax.enterprise.inject.spi.Extension. No change-- in every single
>>>>> case,TamayaCDIAccessor get registered as an extension, whether or not
>>> it
>>>> is
>>>>> mentioned in j.e.inject.spi.Extension, and neither
>>>>> TamayaCDIInjectionExtension nor
>>>>> TamayaSEInjectionExtension do, whether or not they are mentioned. I've
>>>>> triplechecked the assembly of the web-app, and it is correctly putting
>>>> the
>>>>> service files into META-INF/services, so I'm a bit flummoxed. I suspect
>>>>> that the reason that TamayaCDIAccessor is getting registered is
>>> connected
>>>>> ot the reason the other extensions aren't getting registered, but I
>>> don't
>>>>> know what that is… CDI's extension lifecycle is really well-defined.
>>>>>
>>>>> ajs6f
>>>>>
>>>>>> On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
>>>>> wrote:
>>>>>>
>>>>>> On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
>>>>>>
>>>>>>> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>>>>>>>
>>>>>>> # Register Tamaya to perform injection
>>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>>>>>>>
>>>>>>> and now no extension from Tamaya is registered at all! I _do_ see
>>>>> various
>>>>>>> beans being registered, e.g.
>>>>>>>
>>>>>>> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext
>>>> log
>>>>>>> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap -
>>>> WELD-000106:
>>>>>>> Bean: Producer Method [Object] with qualifiers [@Config @Any]
>>> declared
>>>>> as
>>>>>>> [[BackedAnnotatedMethod] @Produces @Config public
>>>>>>>
>>>>>
>>>>
>>> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>>>>>>>
>>>>>>> It looks like the Tamaya example is using Weld 3.0.1.Final as
>>> opposed
>>>> to
>>>>>>> my Weld 3.0.5.Final, but I can't imagine that would make any
>>>> difference.
>>>>>>>
>>>>>>
>>>>>>
>>>>>> It very well could. Weld had some major changes in classloading to
>>>>> support
>>>>>> Java 9 and up. There could be a regression issue there.
>>>>>>
>>>>>> John
>>>>>>
>>>>>>
>>>>>>> ajs6f
>>>>>>>
>>>>>>>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
>>>>> wrote:
>>>>>>>>
>>>>>>>> Hi!
>>>>>>>>
>>>>>>>> As far as I see there is no registration for the CDI extension
>>>> present.
>>>>>>>> Look at our test case for an example:
>>>>>>>>
>>>>>>>
>>>>>
>>>>
>>> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>>>>>>>>
>>>>>>>>
>>>>>>>> Give ad a hint if that solved your problem...😊
>>>>>>>>
>>>>>>>> Best, Anatole
>>>>>>>>
>>>>>>>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>>>>>>>>
>>>>>>>>> Hi, Anatole--
>>>>>>>>>
>>>>>>>>> Thank you very much! Please find my branch here:
>>>>>>>>>
>>>>>>>>>
>>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>>>>>>>>
>>>>>>>>> and the bean field where I'm using @Config is here:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>
>>>>
>>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>>>>>>>>
>>>>>>>>> I'm sorry for the somewhat chaotic code-- this is a very
>>>> experimental
>>>>>>>>> project, although of course CDI and JAX-RS are not the
>>> experimental
>>>>>>> part.
>>>>>>>>>
>>>>>>>>> Please let me know what more info would be useful, and thank you
>>> for
>>>>>>> your
>>>>>>>>> help! (If you would like some log output, I can certainly package
>>>>> that
>>>>>>> up
>>>>>>>>> somewhere for you.)
>>>>>>>>>
>>>>>>>>> ajs6f
>>>>>>>>>
>>>>>>>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>> Thanks for your mail. Basically the extension must load properly
>>>> for
>>>>>>>>> Tamaya
>>>>>>>>>> CDI to work. If you can provide some kind of sample project it
>>>> would
>>>>> be
>>>>>>>>>> perfect and I am happy to help.
>>>>>>>>>>
>>>>>>>>>> J Anatole
>>>>>>>>>>
>>>>>>>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>>>>>>>>
>>>>>>>>>>> Hi, Tamaya-folks!
>>>>>>>>>>>
>>>>>>>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm
>>>> writing
>>>>>>>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS
>>>> (Jersey
>>>>>>>>> 2.27)
>>>>>>>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi,
>>> but
>>>>> I'm
>>>>>>>>>>> running into an odd problem.
>>>>>>>>>>>
>>>>>>>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized
>>>> as a
>>>>>>> CDI
>>>>>>>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor
>>>> extension
>>>>>>>>> show up
>>>>>>>>>>> and get initialized. So when my bean wirings are validated,
>>>>> injection
>>>>>>>>>>> points with a @Config @Inject are failing because CDI doesn't
>>> know
>>>>> to
>>>>>>>>> go to
>>>>>>>>>>> Tamaya for such injections.
>>>>>>>>>>>
>>>>>>>>>>> Has anyone seen anything like this? I can certainly put my
>>> current
>>>>>>>>> branch
>>>>>>>>>>> up somewhere if that would be useful. My
>>>>>>>>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>>>>>>>>
>>>>>>>>>>> # Register Tamaya to perform injection
>>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>>>>>>
>>>>>>>>>>> but only one of those guys seems to come to life! :grin:
>>>>>>>>>>>
>>>>>>>>>>> ajs6f
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> *Anatole Tresch*
>>>> PPMC Member Apache Tamaya
>>>> JCP Star Spec Lead
>>>> *Switzerland, Europe Zurich, GMT+1*
>>>> *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
>>>> *Twitter: @atsticks, @tamayaconf*
>>>>
>>>> *Speaking at:*
>>>>
>>>> [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
>>>>
>>>
>
Re: Tamaya CDI question
Posted by William Lieurance <wi...@namikoda.com>.
Hi there,
I've got some seemingly working code based on your branch at https://github.com/ajs6f/trellis-cassandra-webapp/compare/TamayaConfig...peculater:TamayaConfig . Take a look and tell me what you think.
The problems I noticed are in two areas. The first one is the most frustrating to me, and is the one you alluded to in your most recent email. Namely, balancing all of the CDI providers and consumers when spanning weld, jersey-cdi1x, JSF, the different -servlet packages, all their express and implied dependencies, and finally version conflicts, is really hard and often subtly broken. For most of the tests that we run on CDI in managed contexts, we default to some pre-packaged combos with Arquillian. While that is somewhat heavier weight, it comes with the notable benefit of wiring up CDI with way fewer surprises and generally less work. If you're not big on EE, the various "microprofile" servers do just CDI+JaxRS+Json which sounds like it might be useful if for no other reason than it's clear which versions of which maven artifacts work together.
The second place I spent some time was looking at why using the "cassandraHostAddy" variable at https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L80 wasn't actually providing any data, nor did it seem like dependency injection was ever getting called at all. The answer there is in Weld's documentation at https://docs.jboss.org/weld/reference/latest/en-US/html/injection.html section 4.1. The important part is:
> Dependency injection always occurs when the bean instance is first instantiated by the container. Simplifying just a little, things happen in this order:
>
> First, the container calls the bean constructor (the default constructor or the one annotated @Inject), to obtain an instance of the bean.
> Next, the container initializes the values of all injected fields of the bean.
Note that any bean, including the @ApplicationScope CassandraSession from your example has to have its constructor called before any fields get injected. That means references to the injected fields in the constructor necessarily come back null, and if those fields are never referenced again it might look like the injection never took place at all. I've got an example of how to get Configuration object out of CDI in the constructor in that diff, but it's more than an annotation. Moving the call to cassandraHostAddy out of the constructor and giving it a default value made it work for me.
There is still some weirdness around missing Integer converters that I was never able to pin down, but I really think that has to do with problem one above.
I hope this helps!
--William
________________________________________
From: ajs6f <aj...@apache.org>
Sent: Wednesday, August 29, 2018 10:07 AM
To: dev@tamaya.incubator.apache.org
Subject: Re: Tamaya CDI question
Just as an update, I was able to get tamaya-cdi working with Weld 3.0.5.Final in a setup driven by Pax Exam (no complications from JAX-RS or servlet containers), so I don't think it's a problem with that version of Weld. I will now try building back up towards my real problem to hopefully find the relevant condition that stops Tamaya's CDI extensions from loading.
ajs6f
> On Aug 28, 2018, at 2:28 PM, Anatole Tresch <at...@gmail.com> wrote:
>
> Awesome👍
>
> <aj...@apache.org> schrieb am Di., 28. Aug. 2018, 19:56:
>
>> More than ok-- I am really grateful. You are surely correct that it is a
>> very simple project, but I will keep tinkering and see if I can set up a
>> more minimal example that could evolve into a test case if needed.
>>
>> Thanks!
>>
>> ajs6f
>>
>> On Mon, Aug 27, 2018, 3:36 PM Anatole Tresch <at...@gmail.com> wrote:
>>
>>> OK. somehow sounds a it tricky. Good thing is, your example is really
>>> pretty simple. I am happy to look into further and play around with it as
>>> well, but I will not have a chance to do so before end of week, because I
>>> am completely absorbed with education and work...
>>> If someone else can have a look a it beforehand, I would be pretty happy
>> as
>>> well ;-)
>>>
>>> OK for you?
>>>
>>> Best Anatole
>>>
>>> Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
>>>
>>>> Okay, it doesn't seem to be a version problem, or at least I could get
>> no
>>>> different result working with Weld 3.0.1.Final.
>>>>
>>>> I also tried adding an org.apache.tamaya.spi.ServiceContext file in
>>>> META-INF/services containing just:
>>>>
>>>> org.apache.tamaya.cdi.CDIAwareServiceContext
>>>>
>>>> because I saw that done in the Tamaya CDI module code, as well as every
>>>> possible combination of different entries in
>>>> javax.enterprise.inject.spi.Extension. No change-- in every single
>>>> case,TamayaCDIAccessor get registered as an extension, whether or not
>> it
>>> is
>>>> mentioned in j.e.inject.spi.Extension, and neither
>>>> TamayaCDIInjectionExtension nor
>>>> TamayaSEInjectionExtension do, whether or not they are mentioned. I've
>>>> triplechecked the assembly of the web-app, and it is correctly putting
>>> the
>>>> service files into META-INF/services, so I'm a bit flummoxed. I suspect
>>>> that the reason that TamayaCDIAccessor is getting registered is
>> connected
>>>> ot the reason the other extensions aren't getting registered, but I
>> don't
>>>> know what that is… CDI's extension lifecycle is really well-defined.
>>>>
>>>> ajs6f
>>>>
>>>>> On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
>>>> wrote:
>>>>>
>>>>> On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
>>>>>
>>>>>> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>>>>>>
>>>>>> # Register Tamaya to perform injection
>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>>>>>>
>>>>>> and now no extension from Tamaya is registered at all! I _do_ see
>>>> various
>>>>>> beans being registered, e.g.
>>>>>>
>>>>>> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext
>>> log
>>>>>> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap -
>>> WELD-000106:
>>>>>> Bean: Producer Method [Object] with qualifiers [@Config @Any]
>> declared
>>>> as
>>>>>> [[BackedAnnotatedMethod] @Produces @Config public
>>>>>>
>>>>
>>>
>> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>>>>>>
>>>>>> It looks like the Tamaya example is using Weld 3.0.1.Final as
>> opposed
>>> to
>>>>>> my Weld 3.0.5.Final, but I can't imagine that would make any
>>> difference.
>>>>>>
>>>>>
>>>>>
>>>>> It very well could. Weld had some major changes in classloading to
>>>> support
>>>>> Java 9 and up. There could be a regression issue there.
>>>>>
>>>>> John
>>>>>
>>>>>
>>>>>> ajs6f
>>>>>>
>>>>>>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
>>>> wrote:
>>>>>>>
>>>>>>> Hi!
>>>>>>>
>>>>>>> As far as I see there is no registration for the CDI extension
>>> present.
>>>>>>> Look at our test case for an example:
>>>>>>>
>>>>>>
>>>>
>>>
>> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>>>>>>>
>>>>>>>
>>>>>>> Give ad a hint if that solved your problem...😊
>>>>>>>
>>>>>>> Best, Anatole
>>>>>>>
>>>>>>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>>>>>>>
>>>>>>>> Hi, Anatole--
>>>>>>>>
>>>>>>>> Thank you very much! Please find my branch here:
>>>>>>>>
>>>>>>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>>>>>>>
>>>>>>>> and the bean field where I'm using @Config is here:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>
>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>>>>>>>
>>>>>>>> I'm sorry for the somewhat chaotic code-- this is a very
>>> experimental
>>>>>>>> project, although of course CDI and JAX-RS are not the
>> experimental
>>>>>> part.
>>>>>>>>
>>>>>>>> Please let me know what more info would be useful, and thank you
>> for
>>>>>> your
>>>>>>>> help! (If you would like some log output, I can certainly package
>>>> that
>>>>>> up
>>>>>>>> somewhere for you.)
>>>>>>>>
>>>>>>>> ajs6f
>>>>>>>>
>>>>>>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Thanks for your mail. Basically the extension must load properly
>>> for
>>>>>>>> Tamaya
>>>>>>>>> CDI to work. If you can provide some kind of sample project it
>>> would
>>>> be
>>>>>>>>> perfect and I am happy to help.
>>>>>>>>>
>>>>>>>>> J Anatole
>>>>>>>>>
>>>>>>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>>>>>>>
>>>>>>>>>> Hi, Tamaya-folks!
>>>>>>>>>>
>>>>>>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm
>>> writing
>>>>>>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS
>>> (Jersey
>>>>>>>> 2.27)
>>>>>>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi,
>> but
>>>> I'm
>>>>>>>>>> running into an odd problem.
>>>>>>>>>>
>>>>>>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized
>>> as a
>>>>>> CDI
>>>>>>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor
>>> extension
>>>>>>>> show up
>>>>>>>>>> and get initialized. So when my bean wirings are validated,
>>>> injection
>>>>>>>>>> points with a @Config @Inject are failing because CDI doesn't
>> know
>>>> to
>>>>>>>> go to
>>>>>>>>>> Tamaya for such injections.
>>>>>>>>>>
>>>>>>>>>> Has anyone seen anything like this? I can certainly put my
>> current
>>>>>>>> branch
>>>>>>>>>> up somewhere if that would be useful. My
>>>>>>>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>>>>>>>
>>>>>>>>>> # Register Tamaya to perform injection
>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>>>>>
>>>>>>>>>> but only one of those guys seems to come to life! :grin:
>>>>>>>>>>
>>>>>>>>>> ajs6f
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>> --
>>> *Anatole Tresch*
>>> PPMC Member Apache Tamaya
>>> JCP Star Spec Lead
>>> *Switzerland, Europe Zurich, GMT+1*
>>> *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
>>> *Twitter: @atsticks, @tamayaconf*
>>>
>>> *Speaking at:*
>>>
>>> [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
>>>
>>
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
Just as an update, I was able to get tamaya-cdi working with Weld 3.0.5.Final in a setup driven by Pax Exam (no complications from JAX-RS or servlet containers), so I don't think it's a problem with that version of Weld. I will now try building back up towards my real problem to hopefully find the relevant condition that stops Tamaya's CDI extensions from loading.
ajs6f
> On Aug 28, 2018, at 2:28 PM, Anatole Tresch <at...@gmail.com> wrote:
>
> Awesome👍
>
> <aj...@apache.org> schrieb am Di., 28. Aug. 2018, 19:56:
>
>> More than ok-- I am really grateful. You are surely correct that it is a
>> very simple project, but I will keep tinkering and see if I can set up a
>> more minimal example that could evolve into a test case if needed.
>>
>> Thanks!
>>
>> ajs6f
>>
>> On Mon, Aug 27, 2018, 3:36 PM Anatole Tresch <at...@gmail.com> wrote:
>>
>>> OK. somehow sounds a it tricky. Good thing is, your example is really
>>> pretty simple. I am happy to look into further and play around with it as
>>> well, but I will not have a chance to do so before end of week, because I
>>> am completely absorbed with education and work...
>>> If someone else can have a look a it beforehand, I would be pretty happy
>> as
>>> well ;-)
>>>
>>> OK for you?
>>>
>>> Best Anatole
>>>
>>> Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
>>>
>>>> Okay, it doesn't seem to be a version problem, or at least I could get
>> no
>>>> different result working with Weld 3.0.1.Final.
>>>>
>>>> I also tried adding an org.apache.tamaya.spi.ServiceContext file in
>>>> META-INF/services containing just:
>>>>
>>>> org.apache.tamaya.cdi.CDIAwareServiceContext
>>>>
>>>> because I saw that done in the Tamaya CDI module code, as well as every
>>>> possible combination of different entries in
>>>> javax.enterprise.inject.spi.Extension. No change-- in every single
>>>> case,TamayaCDIAccessor get registered as an extension, whether or not
>> it
>>> is
>>>> mentioned in j.e.inject.spi.Extension, and neither
>>>> TamayaCDIInjectionExtension nor
>>>> TamayaSEInjectionExtension do, whether or not they are mentioned. I've
>>>> triplechecked the assembly of the web-app, and it is correctly putting
>>> the
>>>> service files into META-INF/services, so I'm a bit flummoxed. I suspect
>>>> that the reason that TamayaCDIAccessor is getting registered is
>> connected
>>>> ot the reason the other extensions aren't getting registered, but I
>> don't
>>>> know what that is… CDI's extension lifecycle is really well-defined.
>>>>
>>>> ajs6f
>>>>
>>>>> On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
>>>> wrote:
>>>>>
>>>>> On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
>>>>>
>>>>>> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>>>>>>
>>>>>> # Register Tamaya to perform injection
>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>>>>>>
>>>>>> and now no extension from Tamaya is registered at all! I _do_ see
>>>> various
>>>>>> beans being registered, e.g.
>>>>>>
>>>>>> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext
>>> log
>>>>>> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap -
>>> WELD-000106:
>>>>>> Bean: Producer Method [Object] with qualifiers [@Config @Any]
>> declared
>>>> as
>>>>>> [[BackedAnnotatedMethod] @Produces @Config public
>>>>>>
>>>>
>>>
>> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>>>>>>
>>>>>> It looks like the Tamaya example is using Weld 3.0.1.Final as
>> opposed
>>> to
>>>>>> my Weld 3.0.5.Final, but I can't imagine that would make any
>>> difference.
>>>>>>
>>>>>
>>>>>
>>>>> It very well could. Weld had some major changes in classloading to
>>>> support
>>>>> Java 9 and up. There could be a regression issue there.
>>>>>
>>>>> John
>>>>>
>>>>>
>>>>>> ajs6f
>>>>>>
>>>>>>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
>>>> wrote:
>>>>>>>
>>>>>>> Hi!
>>>>>>>
>>>>>>> As far as I see there is no registration for the CDI extension
>>> present.
>>>>>>> Look at our test case for an example:
>>>>>>>
>>>>>>
>>>>
>>>
>> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>>>>>>>
>>>>>>>
>>>>>>> Give ad a hint if that solved your problem...😊
>>>>>>>
>>>>>>> Best, Anatole
>>>>>>>
>>>>>>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>>>>>>>
>>>>>>>> Hi, Anatole--
>>>>>>>>
>>>>>>>> Thank you very much! Please find my branch here:
>>>>>>>>
>>>>>>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>>>>>>>
>>>>>>>> and the bean field where I'm using @Config is here:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>
>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>>>>>>>
>>>>>>>> I'm sorry for the somewhat chaotic code-- this is a very
>>> experimental
>>>>>>>> project, although of course CDI and JAX-RS are not the
>> experimental
>>>>>> part.
>>>>>>>>
>>>>>>>> Please let me know what more info would be useful, and thank you
>> for
>>>>>> your
>>>>>>>> help! (If you would like some log output, I can certainly package
>>>> that
>>>>>> up
>>>>>>>> somewhere for you.)
>>>>>>>>
>>>>>>>> ajs6f
>>>>>>>>
>>>>>>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> Thanks for your mail. Basically the extension must load properly
>>> for
>>>>>>>> Tamaya
>>>>>>>>> CDI to work. If you can provide some kind of sample project it
>>> would
>>>> be
>>>>>>>>> perfect and I am happy to help.
>>>>>>>>>
>>>>>>>>> J Anatole
>>>>>>>>>
>>>>>>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>>>>>>>
>>>>>>>>>> Hi, Tamaya-folks!
>>>>>>>>>>
>>>>>>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm
>>> writing
>>>>>>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS
>>> (Jersey
>>>>>>>> 2.27)
>>>>>>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi,
>> but
>>>> I'm
>>>>>>>>>> running into an odd problem.
>>>>>>>>>>
>>>>>>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized
>>> as a
>>>>>> CDI
>>>>>>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor
>>> extension
>>>>>>>> show up
>>>>>>>>>> and get initialized. So when my bean wirings are validated,
>>>> injection
>>>>>>>>>> points with a @Config @Inject are failing because CDI doesn't
>> know
>>>> to
>>>>>>>> go to
>>>>>>>>>> Tamaya for such injections.
>>>>>>>>>>
>>>>>>>>>> Has anyone seen anything like this? I can certainly put my
>> current
>>>>>>>> branch
>>>>>>>>>> up somewhere if that would be useful. My
>>>>>>>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>>>>>>>
>>>>>>>>>> # Register Tamaya to perform injection
>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>>>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>>>>>
>>>>>>>>>> but only one of those guys seems to come to life! :grin:
>>>>>>>>>>
>>>>>>>>>> ajs6f
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>> --
>>> *Anatole Tresch*
>>> PPMC Member Apache Tamaya
>>> JCP Star Spec Lead
>>> *Switzerland, Europe Zurich, GMT+1*
>>> *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
>>> *Twitter: @atsticks, @tamayaconf*
>>>
>>> *Speaking at:*
>>>
>>> [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
>>>
>>
Re: Tamaya CDI question
Posted by Anatole Tresch <at...@gmail.com>.
Awesome👍
<aj...@apache.org> schrieb am Di., 28. Aug. 2018, 19:56:
> More than ok-- I am really grateful. You are surely correct that it is a
> very simple project, but I will keep tinkering and see if I can set up a
> more minimal example that could evolve into a test case if needed.
>
> Thanks!
>
> ajs6f
>
> On Mon, Aug 27, 2018, 3:36 PM Anatole Tresch <at...@gmail.com> wrote:
>
> > OK. somehow sounds a it tricky. Good thing is, your example is really
> > pretty simple. I am happy to look into further and play around with it as
> > well, but I will not have a chance to do so before end of week, because I
> > am completely absorbed with education and work...
> > If someone else can have a look a it beforehand, I would be pretty happy
> as
> > well ;-)
> >
> > OK for you?
> >
> > Best Anatole
> >
> > Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
> >
> > > Okay, it doesn't seem to be a version problem, or at least I could get
> no
> > > different result working with Weld 3.0.1.Final.
> > >
> > > I also tried adding an org.apache.tamaya.spi.ServiceContext file in
> > > META-INF/services containing just:
> > >
> > > org.apache.tamaya.cdi.CDIAwareServiceContext
> > >
> > > because I saw that done in the Tamaya CDI module code, as well as every
> > > possible combination of different entries in
> > > javax.enterprise.inject.spi.Extension. No change-- in every single
> > > case,TamayaCDIAccessor get registered as an extension, whether or not
> it
> > is
> > > mentioned in j.e.inject.spi.Extension, and neither
> > > TamayaCDIInjectionExtension nor
> > > TamayaSEInjectionExtension do, whether or not they are mentioned. I've
> > > triplechecked the assembly of the web-app, and it is correctly putting
> > the
> > > service files into META-INF/services, so I'm a bit flummoxed. I suspect
> > > that the reason that TamayaCDIAccessor is getting registered is
> connected
> > > ot the reason the other extensions aren't getting registered, but I
> don't
> > > know what that is… CDI's extension lifecycle is really well-defined.
> > >
> > > ajs6f
> > >
> > > > On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
> > > wrote:
> > > >
> > > > On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
> > > >
> > > >> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
> > > >>
> > > >> # Register Tamaya to perform injection
> > > >> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> > > >> org.apache.tamaya.cdi.TamayaSEInjectionExtension
> > > >>
> > > >> and now no extension from Tamaya is registered at all! I _do_ see
> > > various
> > > >> beans being registered, e.g.
> > > >>
> > > >> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext
> > log
> > > >> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap -
> > WELD-000106:
> > > >> Bean: Producer Method [Object] with qualifiers [@Config @Any]
> declared
> > > as
> > > >> [[BackedAnnotatedMethod] @Produces @Config public
> > > >>
> > >
> >
> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
> > > >>
> > > >> It looks like the Tamaya example is using Weld 3.0.1.Final as
> opposed
> > to
> > > >> my Weld 3.0.5.Final, but I can't imagine that would make any
> > difference.
> > > >>
> > > >
> > > >
> > > > It very well could. Weld had some major changes in classloading to
> > > support
> > > > Java 9 and up. There could be a regression issue there.
> > > >
> > > > John
> > > >
> > > >
> > > >> ajs6f
> > > >>
> > > >>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
> > > wrote:
> > > >>>
> > > >>> Hi!
> > > >>>
> > > >>> As far as I see there is no registration for the CDI extension
> > present.
> > > >>> Look at our test case for an example:
> > > >>>
> > > >>
> > >
> >
> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
> > > >>>
> > > >>>
> > > >>> Give ad a hint if that solved your problem...😊
> > > >>>
> > > >>> Best, Anatole
> > > >>>
> > > >>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
> > > >>>
> > > >>>> Hi, Anatole--
> > > >>>>
> > > >>>> Thank you very much! Please find my branch here:
> > > >>>>
> > > >>>>
> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
> > > >>>>
> > > >>>> and the bean field where I'm using @Config is here:
> > > >>>>
> > > >>>>
> > > >>>>
> > > >>
> > >
> >
> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
> > > >>>>
> > > >>>> I'm sorry for the somewhat chaotic code-- this is a very
> > experimental
> > > >>>> project, although of course CDI and JAX-RS are not the
> experimental
> > > >> part.
> > > >>>>
> > > >>>> Please let me know what more info would be useful, and thank you
> for
> > > >> your
> > > >>>> help! (If you would like some log output, I can certainly package
> > > that
> > > >> up
> > > >>>> somewhere for you.)
> > > >>>>
> > > >>>> ajs6f
> > > >>>>
> > > >>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
> > > >> wrote:
> > > >>>>>
> > > >>>>> Thanks for your mail. Basically the extension must load properly
> > for
> > > >>>> Tamaya
> > > >>>>> CDI to work. If you can provide some kind of sample project it
> > would
> > > be
> > > >>>>> perfect and I am happy to help.
> > > >>>>>
> > > >>>>> J Anatole
> > > >>>>>
> > > >>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> > > >>>>>
> > > >>>>>> Hi, Tamaya-folks!
> > > >>>>>>
> > > >>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm
> > writing
> > > >>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS
> > (Jersey
> > > >>>> 2.27)
> > > >>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi,
> but
> > > I'm
> > > >>>>>> running into an odd problem.
> > > >>>>>>
> > > >>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized
> > as a
> > > >> CDI
> > > >>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor
> > extension
> > > >>>> show up
> > > >>>>>> and get initialized. So when my bean wirings are validated,
> > > injection
> > > >>>>>> points with a @Config @Inject are failing because CDI doesn't
> know
> > > to
> > > >>>> go to
> > > >>>>>> Tamaya for such injections.
> > > >>>>>>
> > > >>>>>> Has anyone seen anything like this? I can certainly put my
> current
> > > >>>> branch
> > > >>>>>> up somewhere if that would be useful. My
> > > >>>>>> javax.enterprise.inject.spi.Extension is as simple as:
> > > >>>>>>
> > > >>>>>> # Register Tamaya to perform injection
> > > >>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
> > > >>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> > > >>>>>>
> > > >>>>>> but only one of those guys seems to come to life! :grin:
> > > >>>>>>
> > > >>>>>> ajs6f
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>
> > > >>>>
> > > >>
> > > >>
> > >
> > >
> >
> > --
> > *Anatole Tresch*
> > PPMC Member Apache Tamaya
> > JCP Star Spec Lead
> > *Switzerland, Europe Zurich, GMT+1*
> > *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
> > *Twitter: @atsticks, @tamayaconf*
> >
> > *Speaking at:*
> >
> > [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
> >
>
Re: Tamaya CDI question
Posted by aj...@apache.org.
More than ok-- I am really grateful. You are surely correct that it is a
very simple project, but I will keep tinkering and see if I can set up a
more minimal example that could evolve into a test case if needed.
Thanks!
ajs6f
On Mon, Aug 27, 2018, 3:36 PM Anatole Tresch <at...@gmail.com> wrote:
> OK. somehow sounds a it tricky. Good thing is, your example is really
> pretty simple. I am happy to look into further and play around with it as
> well, but I will not have a chance to do so before end of week, because I
> am completely absorbed with education and work...
> If someone else can have a look a it beforehand, I would be pretty happy as
> well ;-)
>
> OK for you?
>
> Best Anatole
>
> Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
>
> > Okay, it doesn't seem to be a version problem, or at least I could get no
> > different result working with Weld 3.0.1.Final.
> >
> > I also tried adding an org.apache.tamaya.spi.ServiceContext file in
> > META-INF/services containing just:
> >
> > org.apache.tamaya.cdi.CDIAwareServiceContext
> >
> > because I saw that done in the Tamaya CDI module code, as well as every
> > possible combination of different entries in
> > javax.enterprise.inject.spi.Extension. No change-- in every single
> > case,TamayaCDIAccessor get registered as an extension, whether or not it
> is
> > mentioned in j.e.inject.spi.Extension, and neither
> > TamayaCDIInjectionExtension nor
> > TamayaSEInjectionExtension do, whether or not they are mentioned. I've
> > triplechecked the assembly of the web-app, and it is correctly putting
> the
> > service files into META-INF/services, so I'm a bit flummoxed. I suspect
> > that the reason that TamayaCDIAccessor is getting registered is connected
> > ot the reason the other extensions aren't getting registered, but I don't
> > know what that is… CDI's extension lifecycle is really well-defined.
> >
> > ajs6f
> >
> > > On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
> > wrote:
> > >
> > > On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
> > >
> > >> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
> > >>
> > >> # Register Tamaya to perform injection
> > >> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> > >> org.apache.tamaya.cdi.TamayaSEInjectionExtension
> > >>
> > >> and now no extension from Tamaya is registered at all! I _do_ see
> > various
> > >> beans being registered, e.g.
> > >>
> > >> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext
> log
> > >> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap -
> WELD-000106:
> > >> Bean: Producer Method [Object] with qualifiers [@Config @Any] declared
> > as
> > >> [[BackedAnnotatedMethod] @Produces @Config public
> > >>
> >
> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
> > >>
> > >> It looks like the Tamaya example is using Weld 3.0.1.Final as opposed
> to
> > >> my Weld 3.0.5.Final, but I can't imagine that would make any
> difference.
> > >>
> > >
> > >
> > > It very well could. Weld had some major changes in classloading to
> > support
> > > Java 9 and up. There could be a regression issue there.
> > >
> > > John
> > >
> > >
> > >> ajs6f
> > >>
> > >>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
> > wrote:
> > >>>
> > >>> Hi!
> > >>>
> > >>> As far as I see there is no registration for the CDI extension
> present.
> > >>> Look at our test case for an example:
> > >>>
> > >>
> >
> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
> > >>>
> > >>>
> > >>> Give ad a hint if that solved your problem...😊
> > >>>
> > >>> Best, Anatole
> > >>>
> > >>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
> > >>>
> > >>>> Hi, Anatole--
> > >>>>
> > >>>> Thank you very much! Please find my branch here:
> > >>>>
> > >>>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
> > >>>>
> > >>>> and the bean field where I'm using @Config is here:
> > >>>>
> > >>>>
> > >>>>
> > >>
> >
> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
> > >>>>
> > >>>> I'm sorry for the somewhat chaotic code-- this is a very
> experimental
> > >>>> project, although of course CDI and JAX-RS are not the experimental
> > >> part.
> > >>>>
> > >>>> Please let me know what more info would be useful, and thank you for
> > >> your
> > >>>> help! (If you would like some log output, I can certainly package
> > that
> > >> up
> > >>>> somewhere for you.)
> > >>>>
> > >>>> ajs6f
> > >>>>
> > >>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
> > >> wrote:
> > >>>>>
> > >>>>> Thanks for your mail. Basically the extension must load properly
> for
> > >>>> Tamaya
> > >>>>> CDI to work. If you can provide some kind of sample project it
> would
> > be
> > >>>>> perfect and I am happy to help.
> > >>>>>
> > >>>>> J Anatole
> > >>>>>
> > >>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> > >>>>>
> > >>>>>> Hi, Tamaya-folks!
> > >>>>>>
> > >>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm
> writing
> > >>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS
> (Jersey
> > >>>> 2.27)
> > >>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but
> > I'm
> > >>>>>> running into an odd problem.
> > >>>>>>
> > >>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized
> as a
> > >> CDI
> > >>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor
> extension
> > >>>> show up
> > >>>>>> and get initialized. So when my bean wirings are validated,
> > injection
> > >>>>>> points with a @Config @Inject are failing because CDI doesn't know
> > to
> > >>>> go to
> > >>>>>> Tamaya for such injections.
> > >>>>>>
> > >>>>>> Has anyone seen anything like this? I can certainly put my current
> > >>>> branch
> > >>>>>> up somewhere if that would be useful. My
> > >>>>>> javax.enterprise.inject.spi.Extension is as simple as:
> > >>>>>>
> > >>>>>> # Register Tamaya to perform injection
> > >>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
> > >>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> > >>>>>>
> > >>>>>> but only one of those guys seems to come to life! :grin:
> > >>>>>>
> > >>>>>> ajs6f
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>>>
> > >>>>
> > >>>>
> > >>
> > >>
> >
> >
>
> --
> *Anatole Tresch*
> PPMC Member Apache Tamaya
> JCP Star Spec Lead
> *Switzerland, Europe Zurich, GMT+1*
> *maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
> *Twitter: @atsticks, @tamayaconf*
>
> *Speaking at:*
>
> [image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
>
Re: Tamaya CDI question
Posted by Anatole Tresch <at...@gmail.com>.
OK. somehow sounds a it tricky. Good thing is, your example is really
pretty simple. I am happy to look into further and play around with it as
well, but I will not have a chance to do so before end of week, because I
am completely absorbed with education and work...
If someone else can have a look a it beforehand, I would be pretty happy as
well ;-)
OK for you?
Best Anatole
Am Mo., 27. Aug. 2018 um 20:23 Uhr schrieb ajs6f <aj...@apache.org>:
> Okay, it doesn't seem to be a version problem, or at least I could get no
> different result working with Weld 3.0.1.Final.
>
> I also tried adding an org.apache.tamaya.spi.ServiceContext file in
> META-INF/services containing just:
>
> org.apache.tamaya.cdi.CDIAwareServiceContext
>
> because I saw that done in the Tamaya CDI module code, as well as every
> possible combination of different entries in
> javax.enterprise.inject.spi.Extension. No change-- in every single
> case,TamayaCDIAccessor get registered as an extension, whether or not it is
> mentioned in j.e.inject.spi.Extension, and neither
> TamayaCDIInjectionExtension nor
> TamayaSEInjectionExtension do, whether or not they are mentioned. I've
> triplechecked the assembly of the web-app, and it is correctly putting the
> service files into META-INF/services, so I'm a bit flummoxed. I suspect
> that the reason that TamayaCDIAccessor is getting registered is connected
> ot the reason the other extensions aren't getting registered, but I don't
> know what that is… CDI's extension lifecycle is really well-defined.
>
> ajs6f
>
> > On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org>
> wrote:
> >
> > On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
> >
> >> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
> >>
> >> # Register Tamaya to perform injection
> >> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> >> org.apache.tamaya.cdi.TamayaSEInjectionExtension
> >>
> >> and now no extension from Tamaya is registered at all! I _do_ see
> various
> >> beans being registered, e.g.
> >>
> >> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext log
> >> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap - WELD-000106:
> >> Bean: Producer Method [Object] with qualifiers [@Config @Any] declared
> as
> >> [[BackedAnnotatedMethod] @Produces @Config public
> >>
> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
> >>
> >> It looks like the Tamaya example is using Weld 3.0.1.Final as opposed to
> >> my Weld 3.0.5.Final, but I can't imagine that would make any difference.
> >>
> >
> >
> > It very well could. Weld had some major changes in classloading to
> support
> > Java 9 and up. There could be a regression issue there.
> >
> > John
> >
> >
> >> ajs6f
> >>
> >>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com>
> wrote:
> >>>
> >>> Hi!
> >>>
> >>> As far as I see there is no registration for the CDI extension present.
> >>> Look at our test case for an example:
> >>>
> >>
> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
> >>>
> >>>
> >>> Give ad a hint if that solved your problem...😊
> >>>
> >>> Best, Anatole
> >>>
> >>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
> >>>
> >>>> Hi, Anatole--
> >>>>
> >>>> Thank you very much! Please find my branch here:
> >>>>
> >>>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
> >>>>
> >>>> and the bean field where I'm using @Config is here:
> >>>>
> >>>>
> >>>>
> >>
> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
> >>>>
> >>>> I'm sorry for the somewhat chaotic code-- this is a very experimental
> >>>> project, although of course CDI and JAX-RS are not the experimental
> >> part.
> >>>>
> >>>> Please let me know what more info would be useful, and thank you for
> >> your
> >>>> help! (If you would like some log output, I can certainly package
> that
> >> up
> >>>> somewhere for you.)
> >>>>
> >>>> ajs6f
> >>>>
> >>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
> >> wrote:
> >>>>>
> >>>>> Thanks for your mail. Basically the extension must load properly for
> >>>> Tamaya
> >>>>> CDI to work. If you can provide some kind of sample project it would
> be
> >>>>> perfect and I am happy to help.
> >>>>>
> >>>>> J Anatole
> >>>>>
> >>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> >>>>>
> >>>>>> Hi, Tamaya-folks!
> >>>>>>
> >>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
> >>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
> >>>> 2.27)
> >>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but
> I'm
> >>>>>> running into an odd problem.
> >>>>>>
> >>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a
> >> CDI
> >>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
> >>>> show up
> >>>>>> and get initialized. So when my bean wirings are validated,
> injection
> >>>>>> points with a @Config @Inject are failing because CDI doesn't know
> to
> >>>> go to
> >>>>>> Tamaya for such injections.
> >>>>>>
> >>>>>> Has anyone seen anything like this? I can certainly put my current
> >>>> branch
> >>>>>> up somewhere if that would be useful. My
> >>>>>> javax.enterprise.inject.spi.Extension is as simple as:
> >>>>>>
> >>>>>> # Register Tamaya to perform injection
> >>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
> >>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> >>>>>>
> >>>>>> but only one of those guys seems to come to life! :grin:
> >>>>>>
> >>>>>> ajs6f
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>
--
*Anatole Tresch*
PPMC Member Apache Tamaya
JCP Star Spec Lead
*Switzerland, Europe Zurich, GMT+1*
*maketechsimple.wordpress.com <http://maketechsimple.wordpress.com/> *
*Twitter: @atsticks, @tamayaconf*
*Speaking at:*
[image: JSD_Speaker_2017][image: J-Con 2017 logo][image: JVM Con]
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
Okay, it doesn't seem to be a version problem, or at least I could get no different result working with Weld 3.0.1.Final.
I also tried adding an org.apache.tamaya.spi.ServiceContext file in META-INF/services containing just:
org.apache.tamaya.cdi.CDIAwareServiceContext
because I saw that done in the Tamaya CDI module code, as well as every possible combination of different entries in javax.enterprise.inject.spi.Extension. No change-- in every single case,TamayaCDIAccessor get registered as an extension, whether or not it is mentioned in j.e.inject.spi.Extension, and neither TamayaCDIInjectionExtension nor
TamayaSEInjectionExtension do, whether or not they are mentioned. I've triplechecked the assembly of the web-app, and it is correctly putting the service files into META-INF/services, so I'm a bit flummoxed. I suspect that the reason that TamayaCDIAccessor is getting registered is connected ot the reason the other extensions aren't getting registered, but I don't know what that is… CDI's extension lifecycle is really well-defined.
ajs6f
> On Aug 27, 2018, at 12:33 PM, John D. Ament <jo...@apache.org> wrote:
>
> On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
>
>> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>>
>> # Register Tamaya to perform injection
>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>>
>> and now no extension from Tamaya is registered at all! I _do_ see various
>> beans being registered, e.g.
>>
>> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext log
>> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap - WELD-000106:
>> Bean: Producer Method [Object] with qualifiers [@Config @Any] declared as
>> [[BackedAnnotatedMethod] @Produces @Config public
>> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>>
>> It looks like the Tamaya example is using Weld 3.0.1.Final as opposed to
>> my Weld 3.0.5.Final, but I can't imagine that would make any difference.
>>
>
>
> It very well could. Weld had some major changes in classloading to support
> Java 9 and up. There could be a regression issue there.
>
> John
>
>
>> ajs6f
>>
>>> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com> wrote:
>>>
>>> Hi!
>>>
>>> As far as I see there is no registration for the CDI extension present.
>>> Look at our test case for an example:
>>>
>> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>>>
>>>
>>> Give ad a hint if that solved your problem...😊
>>>
>>> Best, Anatole
>>>
>>> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>>>
>>>> Hi, Anatole--
>>>>
>>>> Thank you very much! Please find my branch here:
>>>>
>>>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>>>
>>>> and the bean field where I'm using @Config is here:
>>>>
>>>>
>>>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>>>
>>>> I'm sorry for the somewhat chaotic code-- this is a very experimental
>>>> project, although of course CDI and JAX-RS are not the experimental
>> part.
>>>>
>>>> Please let me know what more info would be useful, and thank you for
>> your
>>>> help! (If you would like some log output, I can certainly package that
>> up
>>>> somewhere for you.)
>>>>
>>>> ajs6f
>>>>
>>>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
>> wrote:
>>>>>
>>>>> Thanks for your mail. Basically the extension must load properly for
>>>> Tamaya
>>>>> CDI to work. If you can provide some kind of sample project it would be
>>>>> perfect and I am happy to help.
>>>>>
>>>>> J Anatole
>>>>>
>>>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>>>
>>>>>> Hi, Tamaya-folks!
>>>>>>
>>>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
>>>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
>>>> 2.27)
>>>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
>>>>>> running into an odd problem.
>>>>>>
>>>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a
>> CDI
>>>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
>>>> show up
>>>>>> and get initialized. So when my bean wirings are validated, injection
>>>>>> points with a @Config @Inject are failing because CDI doesn't know to
>>>> go to
>>>>>> Tamaya for such injections.
>>>>>>
>>>>>> Has anyone seen anything like this? I can certainly put my current
>>>> branch
>>>>>> up somewhere if that would be useful. My
>>>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>>>
>>>>>> # Register Tamaya to perform injection
>>>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>>>
>>>>>> but only one of those guys seems to come to life! :grin:
>>>>>>
>>>>>> ajs6f
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>
Re: Tamaya CDI question
Posted by "John D. Ament" <jo...@apache.org>.
On Mon, Aug 27, 2018, 10:32 ajs6f <aj...@apache.org> wrote:
> I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
>
> # Register Tamaya to perform injection
> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> org.apache.tamaya.cdi.TamayaSEInjectionExtension
>
> and now no extension from Tamaya is registered at all! I _do_ see various
> beans being registered, e.g.
>
> Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext log
> INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap - WELD-000106:
> Bean: Producer Method [Object] with qualifiers [@Config @Any] declared as
> [[BackedAnnotatedMethod] @Produces @Config public
> org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
>
> It looks like the Tamaya example is using Weld 3.0.1.Final as opposed to
> my Weld 3.0.5.Final, but I can't imagine that would make any difference.
>
It very well could. Weld had some major changes in classloading to support
Java 9 and up. There could be a regression issue there.
John
> ajs6f
>
> > On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com> wrote:
> >
> > Hi!
> >
> > As far as I see there is no registration for the CDI extension present.
> > Look at our test case for an example:
> >
> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
> >
> >
> > Give ad a hint if that solved your problem...😊
> >
> > Best, Anatole
> >
> > ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
> >
> >> Hi, Anatole--
> >>
> >> Thank you very much! Please find my branch here:
> >>
> >> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
> >>
> >> and the bean field where I'm using @Config is here:
> >>
> >>
> >>
> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
> >>
> >> I'm sorry for the somewhat chaotic code-- this is a very experimental
> >> project, although of course CDI and JAX-RS are not the experimental
> part.
> >>
> >> Please let me know what more info would be useful, and thank you for
> your
> >> help! (If you would like some log output, I can certainly package that
> up
> >> somewhere for you.)
> >>
> >> ajs6f
> >>
> >>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com>
> wrote:
> >>>
> >>> Thanks for your mail. Basically the extension must load properly for
> >> Tamaya
> >>> CDI to work. If you can provide some kind of sample project it would be
> >>> perfect and I am happy to help.
> >>>
> >>> J Anatole
> >>>
> >>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> >>>
> >>>> Hi, Tamaya-folks!
> >>>>
> >>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
> >>>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
> >> 2.27)
> >>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
> >>>> running into an odd problem.
> >>>>
> >>>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a
> CDI
> >>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
> >> show up
> >>>> and get initialized. So when my bean wirings are validated, injection
> >>>> points with a @Config @Inject are failing because CDI doesn't know to
> >> go to
> >>>> Tamaya for such injections.
> >>>>
> >>>> Has anyone seen anything like this? I can certainly put my current
> >> branch
> >>>> up somewhere if that would be useful. My
> >>>> javax.enterprise.inject.spi.Extension is as simple as:
> >>>>
> >>>> # Register Tamaya to perform injection
> >>>> org.apache.tamaya.cdi.TamayaCDIAccessor
> >>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> >>>>
> >>>> but only one of those guys seems to come to life! :grin:
> >>>>
> >>>> ajs6f
> >>>>
> >>>>
> >>>>
> >>>>
> >>
> >>
>
>
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
I'm afraid not-- I changed javax.enterprise.inject.spi.Extension to:
# Register Tamaya to perform injection
org.apache.tamaya.cdi.TamayaCDIInjectionExtension
org.apache.tamaya.cdi.TamayaSEInjectionExtension
and now no extension from Tamaya is registered at all! I _do_ see various beans being registered, e.g.
Aug 27, 2018 10:27:23 AM org.apache.catalina.core.ApplicationContext log
INFO: 10:27:23.024 [main] DEBUG org.jboss.weld.Bootstrap - WELD-000106: Bean: Producer Method [Object] with qualifiers [@Config @Any] declared as [[BackedAnnotatedMethod] @Produces @Config public org.apache.tamaya.cdi.ConfigurationProducer.resolveAndConvert(InjectionPoint)]
It looks like the Tamaya example is using Weld 3.0.1.Final as opposed to my Weld 3.0.5.Final, but I can't imagine that would make any difference.
ajs6f
> On Aug 24, 2018, at 6:04 PM, Anatole Tresch <at...@gmail.com> wrote:
>
> Hi!
>
> As far as I see there is no registration for the CDI extension present.
> Look at our test case for an example:
> https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
>
>
> Give ad a hint if that solved your problem...😊
>
> Best, Anatole
>
> ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
>
>> Hi, Anatole--
>>
>> Thank you very much! Please find my branch here:
>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>>
>> and the bean field where I'm using @Config is here:
>>
>>
>> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>>
>> I'm sorry for the somewhat chaotic code-- this is a very experimental
>> project, although of course CDI and JAX-RS are not the experimental part.
>>
>> Please let me know what more info would be useful, and thank you for your
>> help! (If you would like some log output, I can certainly package that up
>> somewhere for you.)
>>
>> ajs6f
>>
>>> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com> wrote:
>>>
>>> Thanks for your mail. Basically the extension must load properly for
>> Tamaya
>>> CDI to work. If you can provide some kind of sample project it would be
>>> perfect and I am happy to help.
>>>
>>> J Anatole
>>>
>>> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>>>
>>>> Hi, Tamaya-folks!
>>>>
>>>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
>>>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
>> 2.27)
>>>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
>>>> running into an odd problem.
>>>>
>>>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a CDI
>>>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
>> show up
>>>> and get initialized. So when my bean wirings are validated, injection
>>>> points with a @Config @Inject are failing because CDI doesn't know to
>> go to
>>>> Tamaya for such injections.
>>>>
>>>> Has anyone seen anything like this? I can certainly put my current
>> branch
>>>> up somewhere if that would be useful. My
>>>> javax.enterprise.inject.spi.Extension is as simple as:
>>>>
>>>> # Register Tamaya to perform injection
>>>> org.apache.tamaya.cdi.TamayaCDIAccessor
>>>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>>>
>>>> but only one of those guys seems to come to life! :grin:
>>>>
>>>> ajs6f
>>>>
>>>>
>>>>
>>>>
>>
>>
Re: Tamaya CDI question
Posted by Anatole Tresch <at...@gmail.com>.
Hi!
As far as I see there is no registration for the CDI extension present.
Look at our test case for an example:
https://github.com/apache/incubator-tamaya-extensions/blob/master/modules/injection/cdi/src/test/resources/META-INF/services/javax.enterprise.inject.spi.Extension
Give ad a hint if that solved your problem...😊
Best, Anatole
ajs6f <aj...@apache.org> schrieb am Fr., 24. Aug. 2018, 17:39:
> Hi, Anatole--
>
> Thank you very much! Please find my branch here:
>
> https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
>
> and the bean field where I'm using @Config is here:
>
>
> https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
>
> I'm sorry for the somewhat chaotic code-- this is a very experimental
> project, although of course CDI and JAX-RS are not the experimental part.
>
> Please let me know what more info would be useful, and thank you for your
> help! (If you would like some log output, I can certainly package that up
> somewhere for you.)
>
> ajs6f
>
> > On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com> wrote:
> >
> > Thanks for your mail. Basically the extension must load properly for
> Tamaya
> > CDI to work. If you can provide some kind of sample project it would be
> > perfect and I am happy to help.
> >
> > J Anatole
> >
> > ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> >
> >> Hi, Tamaya-folks!
> >>
> >> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
> >> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey
> 2.27)
> >> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
> >> running into an odd problem.
> >>
> >> I'm not seeing TamayaCDIInjectionExtension properly initialized as a CDI
> >> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension
> show up
> >> and get initialized. So when my bean wirings are validated, injection
> >> points with a @Config @Inject are failing because CDI doesn't know to
> go to
> >> Tamaya for such injections.
> >>
> >> Has anyone seen anything like this? I can certainly put my current
> branch
> >> up somewhere if that would be useful. My
> >> javax.enterprise.inject.spi.Extension is as simple as:
> >>
> >> # Register Tamaya to perform injection
> >> org.apache.tamaya.cdi.TamayaCDIAccessor
> >> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
> >>
> >> but only one of those guys seems to come to life! :grin:
> >>
> >> ajs6f
> >>
> >>
> >>
> >>
>
>
Re: Tamaya CDI question
Posted by ajs6f <aj...@apache.org>.
Hi, Anatole--
Thank you very much! Please find my branch here:
https://github.com/ajs6f/trellis-cassandra-webapp/tree/TamayaConfig
and the bean field where I'm using @Config is here:
https://github.com/ajs6f/trellis-cassandra-webapp/blob/TamayaConfig/src/main/java/edu/si/trellis/cassandra/CassandraSession.java#L47
I'm sorry for the somewhat chaotic code-- this is a very experimental project, although of course CDI and JAX-RS are not the experimental part.
Please let me know what more info would be useful, and thank you for your help! (If you would like some log output, I can certainly package that up somewhere for you.)
ajs6f
> On Aug 24, 2018, at 2:34 AM, Anatole Tresch <at...@gmail.com> wrote:
>
> Thanks for your mail. Basically the extension must load properly for Tamaya
> CDI to work. If you can provide some kind of sample project it would be
> perfect and I am happy to help.
>
> J Anatole
>
> ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
>
>> Hi, Tamaya-folks!
>>
>> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
>> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey 2.27)
>> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
>> running into an odd problem.
>>
>> I'm not seeing TamayaCDIInjectionExtension properly initialized as a CDI
>> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension show up
>> and get initialized. So when my bean wirings are validated, injection
>> points with a @Config @Inject are failing because CDI doesn't know to go to
>> Tamaya for such injections.
>>
>> Has anyone seen anything like this? I can certainly put my current branch
>> up somewhere if that would be useful. My
>> javax.enterprise.inject.spi.Extension is as simple as:
>>
>> # Register Tamaya to perform injection
>> org.apache.tamaya.cdi.TamayaCDIAccessor
>> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>>
>> but only one of those guys seems to come to life! :grin:
>>
>> ajs6f
>>
>>
>>
>>
Re: Tamaya CDI question
Posted by Anatole Tresch <at...@gmail.com>.
Thanks for your mail. Basically the extension must load properly for Tamaya
CDI to work. If you can provide some kind of sample project it would be
perfect and I am happy to help.
J Anatole
ajs6f <aj...@apache.org> schrieb am Do., 23. Aug. 2018, 22:00:
> Hi, Tamaya-folks!
>
> I'm tinkering with Tamaya (0.3-incubating) for a webapp I'm writing
> (deployed as a WAR in a servlet container). I'm using JAX-RS (Jersey 2.27)
> and CDI (Weld 3.0.5.Final) and I would love to use tamaya-cdi, but I'm
> running into an odd problem.
>
> I'm not seeing TamayaCDIInjectionExtension properly initialized as a CDI
> extension, but oddly, I _am_ seeing the TamayaCDIAccessor extension show up
> and get initialized. So when my bean wirings are validated, injection
> points with a @Config @Inject are failing because CDI doesn't know to go to
> Tamaya for such injections.
>
> Has anyone seen anything like this? I can certainly put my current branch
> up somewhere if that would be useful. My
> javax.enterprise.inject.spi.Extension is as simple as:
>
> # Register Tamaya to perform injection
> org.apache.tamaya.cdi.TamayaCDIAccessor
> org.apache.tamaya.cdi.TamayaCDIInjectionExtension
>
> but only one of those guys seems to come to life! :grin:
>
> ajs6f
>
>
>
>