Le ven. 19 févr. 2021 à 12:48, Arne Limburg <arne.limb...@openknowledge.de>
a écrit :

> Hi Romain
>
>
> I'll investigate the beans.xml problem further, but it seemed to me that
> two containers were started.
>

Oki, let me know if i can help.


>
>
> Regarding the META-INF/services file, I am talking about
>
> javax.enterprise.inject.se.SeContainerInitializer
>
> and not
>
> org.apache.openwebbeans.se.SeContainerSelector
>
> The first one is not available in meecrowave. So in meecrowave I cannot do
> SeContainerInitializer.newInstance()
>

This is not strictly true (don't get it "rude", I'll explain with next
answer ;))


>
> Is that by intention?
>

Yes, fact is SeContainerInitializer cdi api is incomplete since you cant
select the impl you want either from a provider(xx) method or a system
property so you can't have 2 impl at the same time in the same classpath -
note it is not aligned on EE spec SPI,
to solve it we introduced (ok I did ;)) the facade SPI behind the standard
API. Current version is very raw but plan is to enhance it to enable too
the sorting and selection we can need (just did the minimum for meecrowave
case at the moment).
It also enables to reuse a lot of the OWBInitializer impl and in particular
explicit scanning (classes(), packages() etc).

Hope it makes sense.


>
>
> Cheers,
>
> Arne
>
>
> --
>
> Arne Limburg - Enterprise Architekt
>
>
>
>
> OPEN KNOWLEDGE GmbH
> Poststraße 1, 26122 Oldenburg
> Mobil: +49 151 - 108 22 942
> Tel: +49 441 - 4082-154
> Fax: +49 441 - 4082-111
> arne.limb...@openknowledge.de
> www.openknowledge.de <https://www.openknowledge.de/>
>
> Registergericht: Amtsgericht Oldenburg, HRB 4670
> Geschäftsführer: Lars Röwekamp, Jens Schumann
>
> Treffen Sie uns auf kommenden Konferenzen und Workshops:
>
> Zu unseren Events<https://www.openknowledge.de/event/>
>
>
>
>
>
> ________________________________
> Von: Romain Manni-Bucau <rmannibu...@gmail.com>
> Gesendet: Donnerstag, 18. Februar 2021 22:08
> An: openwebbeans-dev
> Betreff: Re: Incompatibility between owb-se and meecrowave?
>
> Le jeu. 18 févr. 2021 à 21:34, Arne Limburg <arne.limb...@openknowledge.de
> >
> a écrit :
>
> > Hi Romain,
> >
> >
> > thank you, it helps a bit to understand.
> >
> > I would be ok, if meecrowave would handle everything as expected, but
> > somehow my src/test/resources/META-INF/beans.xml is completely ignored in
> > the case that both are in the classpath. Maybe we should at least fix
> that.
> >
>
> Sure but can be a wrong setup no?
> It just does a meecrowave.bake.
>
> Side note: http cna be disabled adding the right properties.
>
>
> > And - I cannot use SeContainerInitializer with meecrowave (without
> > owb-se), because the META-INF/services-file is missing in
> meecrowave-core.
> >
> > Is that intended?
> >
>
> It is there
>
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=https%3a%2f%2fgithub.com%2fapache%2fopenwebbeans%2dmeecrowave%2fblob%2fmaster%2fmeecrowave%2dcore%2fsrc%2fmain%2fresources%2fMETA%2dINF%2fservices%2forg.apache.openwebbeans.se.SeContainerSelector&umid=eb274f2a-4a83-4976-bb5b-25305b94c12d&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-30463a61b2c416f6da062ee1dce64d129c178768
>
>
>
> >
> > Cheers,
> >
> > Arne
> >
> >
> > --
> >
> > Arne Limburg - Enterprise Architekt
> >
> >
> >
> >
> > OPEN KNOWLEDGE GmbH
> > Poststraße 1, 26122 Oldenburg
> > Mobil: +49 151 - 108 22 942
> > Tel: +49 441 - 4082-154
> > Fax: +49 441 - 4082-111
> > arne.limb...@openknowledge.de
> > www.openknowledge.de<http://www.openknowledge.de> <
> https://www.openknowledge.de/>
> >
> > Registergericht: Amtsgericht Oldenburg, HRB 4670
> > Geschäftsführer: Lars Röwekamp, Jens Schumann
> >
> > Treffen Sie uns auf kommenden Konferenzen und Workshops:
> >
> > Zu unseren Events<https://www.openknowledge.de/event/>
> >
> >
> >
> >
> >
> > ________________________________
> > Von: Romain Manni-Bucau <rmannibu...@gmail.com>
> > Gesendet: Donnerstag, 18. Februar 2021 17:11
> > An: openwebbeans-dev
> > Betreff: Re: Incompatibility between owb-se and meecrowave?
> >
> > Hi Arne,
> >
> > Both (meecrowave-core and owb-se) implement SeContainer API - this part
> is
> > intended.
> >
> > Nominal case is to have only one of both in the classpath.
> >
> > The main trick happens
> > in org.apache.openwebbeans.se.SeInitializerFacade#SeInitializerFacade
> (and
> > when you have both meecrowave wins since it supports SE + other
> features).
> >
> > If you handle the bootstrap manually you can do
> > new org.apache.openwebbeans.se.OWBInitializer() to workaround it - sadly
> > SeContainerInitializer does not have a provider(fqn) method not supports
> a
> > system property to override it.
> > If in a maven project and for tests I suspect you can just implement your
> > own org.apache.openwebbeans.se.SeInitializerFacade and since maven will
> > put
> > src/test/resources before deps in the classpath it will use that so you
> can
> > control the selection logic.
> >
> > If not sufficient we can still
> > extend org.apache.openwebbeans.se
> .SeInitializerFacade#SeInitializerFacade
> > logic to read a system property to select the container to use and if not
> > fallback on current impl, we can even enrich our junit5 integration
> (@Cdi)
> > to set this system property around
> > org/apache/openwebbeans/junit5/internal/CdiExtension.java:70 to ensure we
> > can set it in the annotation if relevant.
> >
> > Hope it helps a bit.
> >
> > Romain Manni-Bucau
> > @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> > <
> >
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=https%3a%2f%2frmannibucau.metawerx.net&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-5387e0b08aca5d54f73dd04264c823e22f121630
> >
> > | Old Blog
> > <
> >
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
> [
> https://secure.gravatar.com/blavatar/18ef8a5fe8eefd3810b5e9743904d82c?s=200&ts=1613734699
> ]<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
>
> New posts here >>> rmannibucau.metawerx.net | New posts here >>>
> https://rmannibucau.metawerx.net<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
> smex-ctp.trendmicro.com
> New posts here >>> https://rmannibucau.metawerx.net
>
>
> > | Github <
> >
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=https%3a%2f%2fgithub.com%2frmannibucau&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-e8183cb0b6e5f912faccf35291165d1fbbd68331
> >
> > |
> > [
> >
> https://secure.gravatar.com/blavatar/18ef8a5fe8eefd3810b5e9743904d82c?s=200&ts=1613679711
> > ]<
> >
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> [
> https://secure.gravatar.com/blavatar/18ef8a5fe8eefd3810b5e9743904d82c?s=200&ts=1613734729
> ]<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
>
> New posts here >>> rmannibucau.metawerx.net | New posts here >>>
> https://rmannibucau.metawerx.net<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
> smex-ctp.trendmicro.com
> New posts here >>> https://rmannibucau.metawerx.net
>
>
> > >
> >
> > New posts here >>> rmannibucau.metawerx.net | New posts here >>>
> >
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=https%3a%2f%2frmannibucau.metawerx.net&umid=eb274f2a-4a83-4976-bb5b-25305b94c12d&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-0ae7af498d6b64bbf32d5f519e77b3a23a288c12
> <
> >
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> [
> https://secure.gravatar.com/blavatar/18ef8a5fe8eefd3810b5e9743904d82c?s=200&ts=1613734759
> ]<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
>
> New posts here >>> rmannibucau.metawerx.net | New posts here >>>
> https://rmannibucau.metawerx.net<
> https://smex-ctp.trendmicro.com/wis/clicktime/v1/query?url=http%3a%2f%2frmannibucau.wordpress.com&umid=b33097f3-3ba5-4d1d-a944-8f469aed22f4&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-630e11efd26521ab597721a159776f15faf70734
> >
> smex-ctp.trendmicro.com
> New posts here >>> https://rmannibucau.metawerx.net
>
>
> > >
> > smex-ctp.trendmicro.com
> > New posts here >>>
> https://smex-ctp.trendmicro.com:443/wis/clicktime/v1/query?url=https%3a%2f%2frmannibucau.metawerx.net&umid=eb274f2a-4a83-4976-bb5b-25305b94c12d&auth=ab2dbe9a65917e05515ec2a89459f3e450df8ff8-0ae7af498d6b64bbf32d5f519e77b3a23a288c12
> >
> >
> > LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
> > <
> >
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> [https://static.packt-cdn.com/products/9781788473064/cover/smaller]<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
>
> Java EE 8 High Performance | Packt<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
> www.packtpub.com
> Get more control of your applications performances in development and
> production and know how to meet your Service Level Agreement on critical
> microservices.
>
>
> > >
> > [https://static.packt-cdn.com/products/9781788473064/cover/smaller]<
> >
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> [https://static.packt-cdn.com/products/9781788473064/cover/smaller]<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
>
> Java EE 8 High Performance | Packt<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
> www.packtpub.com
> Get more control of your applications performances in development and
> production and know how to meet your Service Level Agreement on critical
> microservices.
>
>
> > >
> >
> > Java EE 8 High Performance | Packt<
> >
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> [https://static.packt-cdn.com/products/9781788473064/cover/smaller]<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
>
> Java EE 8 High Performance | Packt<
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
> www.packtpub.com
> Get more control of your applications performances in development and
> production and know how to meet your Service Level Agreement on critical
> microservices.
>
>
> > >
> > www.packtpub.com<http://www.packtpub.com>
> Packt | Programming Books, eBooks & Videos for Developers<
> http://www.packtpub.com/>
> www.packtpub.com
> Packt is the online library and learning platform for professional
> developers. Learn Python, JavaScript, Angular and more with eBooks, videos
> and courses
>
>
> > Get more control of your applications performances in development and
> > production and know how to meet your Service Level Agreement on critical
> > microservices.
> >
> >
> >
> >
> > Le jeu. 18 févr. 2021 à 16:46, Arne Limburg <
> arne.limb...@openknowledge.de
> > >
> > a écrit :
> >
> > > Hi,
> > >
> > >
> > > I am observing some issues with
> > >
> > > SeContainerInitializer.newInstance().initialize();
> > >
> > > When I use it in my tests meecrowave (which is on the classpath) kicks
> in
> > > and does some weird stuff with the classpath.
> > >
> > > Basically I try to enable an alternative stereotype for my tests and it
> > > does not work in that scenario neither via beans.xml (in
> > > src/test/resources/META-INF) nor via
> > > SeContainerInitializer#selectAlternativeStereotypes.
> > >
> > > With either owb-se or meecrowave in the classpath it works as expected
> > > (with new Meecrowave().bake()).
> > >
> > >
> > > Did a short digging into the code and it seams that two contexts are
> > > started in that case.
> > >
> > >
> > > Does anyone have an idea what's going on or where I should look at to
> > find
> > > the problem?
> > >
> > > Next question: How is it supposed to work?
> > >
> > > In my scenario I want to start a CDI container without a webcontainer,
> > but
> > > even doing it with owb-internal classes does not work, because it
> detects
> > > some meecrowave classes that have servlet injection points that cannot
> be
> > > satisfied in that scenario.
> > >
> > >
> > > Imho when using SeContainerInitializer.newInstance().initialize()
> > > meecrowave should not be started, but I have no idea how to achieve
> that.
> > > Should we explicitly exclude every meecrowave class in SE scenarios?
> > >
> > >
> > > I would work on that, but I need an idea in which direction to go.
> > >
> > >
> > > Cheers,
> > >
> > > Arne
> > >
> > >
> > > --
> > >
> > > Arne Limburg - Enterprise Architekt
> > >
> > >
> > > OPEN KNOWLEDGE GmbH
> > > Poststraße 1, 26122 Oldenburg
> > > Mobil: +49 151 - 108 22 942
> > > Tel: +49 441 - 4082-154
> > > Fax: +49 441 - 4082-111
> > > arne.limb...@openknowledge.de
> > > www.openknowledge.de<http://www.openknowledge.de<
> http://www.openknowledge.de<http://www.openknowledge.de>> <
> > https://www.openknowledge.de/>
> > >
> > > Registergericht: Amtsgericht Oldenburg, HRB 4670
> > > Geschäftsführer: Lars Röwekamp, Jens Schumann
> > >
> > > Treffen Sie uns auf kommenden Konferenzen und Workshops:
> > >
> > > Zu unseren Events<https://www.openknowledge.de/event/>
> > >
> > >
> > >
> > >
> > >
> >
>

Reply via email to