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://github.com/apache/openwebbeans-meecrowave/blob/master/meecrowave-core/src/main/resources/META-INF/services/org.apache.openwebbeans.se.SeContainerSelector > > 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 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> > | 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 > > > > 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 > > > 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. > > > > > 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> < > 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/> > > > > > > > > > > >