I'm tempted to agree, but I'm sitting on the fence a little. If we did do this, we should add a microprofile execution to the arquillian tests so we can iron the issues out.
Jon On Thu, Dec 20, 2018 at 11:14 AM Bruno Baptista <[email protected]> wrote: > Hi, > > It makes sense to remove MP support from Plume and Plus while these > issues are cleared. > > We should probably create a branch to fix those issues. > > Cheers. > > Bruno Baptista > https://twitter.com/brunobat_ > > > On 20/12/18 10:44, Roberto Cortez wrote: > > Hey Ivan, > > > > Thank you. > > > > What TomEE and the Geronimo implementation actually do is to expose all > of these endpoints in the application context path being deployed. So for > instance if you have: > > > > app.war, you get: > > - app/health > > - app/metrics > > - app/openapi > > > > movies.war, you get: > > - movies/health > > - movies/metrics > > - movies/openapi > > > > The issue here, is that these endpoints get deployed with any Web > application. So if you have a web app with simple Servlet, you also get > these endpoints deployed with the app. This causes issues if the Servlet is > mapped to /*, because the REST service will override the base context path. > Again, to be able to expose the MP endpoints on the base app context root. > > > > I’m thinking that we may need to be more smart about this and not just > blindly expose or start MP behaviour without some additional checks. Things > like: > > - Expose the specific MP REST endpoints if the app has other REST > services. > > - Expose the specific MP REST endpoints if using specific MP > annotation on the app (like @Metric that just need a CDI bean) > > - Don’t any Filters if (for JWT and OpenTracing) if these are not in > use. > > > > These are just some that came to my mind, but probably there are other > cases. I’ll probably suggest to remove MP support for Plume and Plus and > add the MP binary to TomEE TCK tests, disabled but with the ability for us > to run them, so we can start making adjustments. There are also issues with > EAR deployments and MP. > > > > Any thoughts? > > > > Cheers, > > Roberto > > > >> On 20 Dec 2018, at 07:08, Ivan St. Ivanov <[email protected]> > wrote: > >> > >> Hi everyone, > >> > >> TL; DR; the mentioned paths seem to be context roots, not subpaths. > >> > >> Let me chime in on the topic of MP spec paths. > >> > >> - The Health check spec in Appendix A states that /health is a > context > >> [path]. Which means that it is directly after the host, i.e. > >> http://localhost:8080/health > >> - The Metrics spec calls /metrics "base path" (not as specific as > Health > >> check calling it *context path*) > >> - The Open API spec in its section 5.1 gives an example with /openapi > >> being a context path too > >> > >> I remember a discussion in the MP mailing lists a few months ago, where > >> someone questioned the fact that MP specs should not be considered just > for > >> microservices, where you have one context only. But also in classical > app > >> server scenarios with multiple applications per server. In that sense, > the > >> person starting the discussion asked for application specific health and > >> metrics endpoints rather then app server specific. > >> > >> Cheers, > >> Ivan > >> > >> On Thu, Dec 20, 2018 at 2:08 AM Roberto Cortez > <[email protected]> > >> wrote: > >> > >>> As far as I know, all their endpoints are on a subpath, but since a CXF > >>> Rest Service needs to be created to expose these paths (/health, > /openapi, > >>> /metrics), I think that somehow the deployment service creates service > and > >>> overrides the "/". > >>> > >>> I will try to see what can be done in that regard. I was thinking that > at > >>> the very least, one thing we could do (not sure if possible) is to > check if > >>> we have other REST endpoints in the app, and if not, complete skip the > >>> additional MP endpoints deployment. > >>> > >>>> On 19 Dec 2018, at 20:31, Jonathan Gallimore < > >>> [email protected]> wrote: > >>>>> How did you got that NPE? I had to debug it and get it from a catch > >>>> clause, because it was not showing up in the logs. > >>>> > >>>> Right. For the benefit of others reading this, I ran the test with > >>>> -Dopenejb.server.debug, and put a breakpoint here: > >>>> > >>> > https://github.com/apache/tomcat/blob/TOMCAT_9_0_12/java/org/apache/catalina/core/StandardContext.java#L4494 > >>> . > >>>> and then did a t.printStackTrace(). The output from the server does > end > >>> up > >>>> in target/surefire-reports/dumpStream*. > >>>> > >>>>> It seems that when you are deploying a simple servlet in a MP enabled > >>>> container using the /* as the url pattern, this will get overridden > when > >>> MP > >>>> starts up and adds the endpoints to consume openapi, metrics, health, > so > >>>> the servlet call ends up in a 404. > >>>> > >>>> Yeah. That's what I was trying to say in my first message, but my > coffee > >>>> hadn't kicked in at that point. You phrased it way better. > >>>> > >>>> I think we have two issues - 1 is the URL pattern being taken over my > MP, > >>>> and 2 is certain things not being wired up for whatever reason e.g. > the > >>>> OpenTracing filter. > >>>> > >>>> Does MicroProfile have to have its endpoints directly off "/", or can > >>> there > >>>> be a sub path? > >>>> > >>>> Jon > >>>> > >>>> On Wed, Dec 19, 2018 at 6:38 PM Roberto Cortez > >>> <[email protected]> > >>>> wrote: > >>>> > >>>>> Ok, I think I got more info. > >>>>> > >>>>> It seems that when you are deploying a simple servlet in a MP enabled > >>>>> container using the /* as the url pattern, this will get overridden > >>> when MP > >>>>> starts up and adds the endpoints to consume openapi, metrics, > health, so > >>>>> the servlet call ends up in a 404. > >>>>> > >>>>>> On 19 Dec 2018, at 18:27, Roberto Cortez > <[email protected]> > >>>>> wrote: > >>>>>> Ah never mind. Forgot this is running in forked mode. > >>>>>> > >>>>>>> On 19 Dec 2018, at 18:18, Roberto Cortez > <[email protected] > >>>>> wrote: > >>>>>>> I’m not completely sure if that library is the only problem. We may > >>>>> need to remove it all together. For now, I’m just trying to figure > out > >>> the > >>>>> test failures. For some reason, they are not very descriptive on what > >>>>> failed. > >>>>>>> How did you got that NPE? I had to debug it and get it from a catch > >>>>> clause, because it was not showing up in the logs. > >>>>>>>> On 19 Dec 2018, at 17:29, Jonathan Gallimore < > >>>>> [email protected]> wrote: > >>>>>>>> Interesting. Not sure what the best way is forward at the > moment... > >>>>>>>> thoughts appreciated. If I have a brainwave, I'll post here. > >>> Currently > >>>>> I'm > >>>>>>>> wondering if we can just remove that library from TomEE for the > tests > >>>>> until > >>>>>>>> we can figure it out. > >>>>>>>> > >>>>>>>> Jon > >>>>>>>> > >>>>>>>> On Wed, Dec 19, 2018 at 4:12 PM Roberto Cortez > >>>>> <[email protected]> > >>>>>>>> wrote: > >>>>>>>> > >>>>>>>>> It seems that there is no single issue that you can use to fix > all > >>> the > >>>>>>>>> tests. Adding MP apparently affected all tests in different ways. > >>>>>>>>> > >>>>>>>>> For instance AllFilterTest (the one I started looking), was not > >>>>> starting > >>>>>>>>> any CDI Extensions. Then I figure out that the web.xml had a > >>>>> metadacomplete > >>>>>>>>> = true that makes the container to not scan the libs folder. > >>> Removing > >>>>> that > >>>>>>>>> line made it work. > >>>>>>>>> > >>>>>>>>> AppComposerTest for some reason it seems is not able to inject a > CDI > >>>>> bean. > >>>>>>>>> This seems to be more tricky, since it is deploying an > >>>>> ApplicationComposer > >>>>>>>>> and you list the CDI beans explicitly on the test. > >>>>>>>>> > >>>>>>>>> In the end, the sources may be different but the cause seems to > be > >>>>> always > >>>>>>>>> related with the init of the OpenTracing filter. There is a > config > >>> to > >>>>>>>>> disable it, but I’m not sure if that is the best approach. Maybe > the > >>>>>>>>> initialiser should be more clever and not blindly add the Filter > >>>>> without > >>>>>>>>> checking in everything in the environment is set up > >>>>>>>>> > >>>>>>>>> I’ll keep investigating to have more details. > >>>>>>>>> > >>>>>>>>>> On 19 Dec 2018, at 15:19, Roberto Cortez > >>> <[email protected] > >>>>>>>>> wrote: > >>>>>>>>>> Yes. That is because the CDI Extension is not executing. I’m > trying > >>>>> to > >>>>>>>>> figure out why. > >>>>>>>>>>> On 19 Dec 2018, at 14:45, Jonathan Gallimore < > >>>>>>>>> [email protected]> wrote: > >>>>>>>>>>> If it helps, here's the exception I'm getting, which is causing > >>> the > >>>>> app > >>>>>>>>> to > >>>>>>>>>>> fail to deploy: > >>>>>>>>>>> > >>>>>>>>>>> java.lang.NullPointerException > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.geronimo.microprofile.opentracing.microprofile.server.OpenTracingFilter.init(OpenTracingFilter.java:57) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:270) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:251) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:102) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4491) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5135) > >>>>>>>>>>> at > >>>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:743) > >>>>>>>>>>> at > >>>>> > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:719) > >>>>>>>>>>> at > >>>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:703) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar(TomcatWebAppBuilder.java:658) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps(TomcatWebAppBuilder.java:598) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.deployment.TomcatWebappDeployer.deploy(TomcatWebappDeployer.java:47) > >>>>>>>>>>> at > >>>>> org.apache.openejb.assembler.DeployerEjb.deploy(DeployerEjb.java:177) > >>>>>>>>>>> at > >>>>> org.apache.openejb.assembler.DeployerEjb.deploy(DeployerEjb.java:140) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.security.internal.InternalSecurityInterceptor.invoke(InternalSecurityInterceptor.java:35) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:191) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:102) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.singleton.SingletonContainer._invoke(SingletonContainer.java:272) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.singleton.SingletonContainer.invoke(SingletonContainer.java:221) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbRequestHandler.doEjbObject_BUSINESS_METHOD(EjbRequestHandler.java:371) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:182) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:360) > >>>>>>>>>>> at > >>>>> org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:247) > >>>>>>>>>>> at > >>>>> org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:104) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.httpd.ServerServlet.service(ServerServlet.java:60) > >>>>>>>>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) > >>>>>>>>>>> at > >>>>> org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.OpenEJBSecurityListener$RequestCapturer.invoke(OpenEJBSecurityListener.java:97) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770) > >>>>>>>>>>> at > >>>>>>>>>>> org.apache.tomcat.util.net > >>>>>>>>> .NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415) > >>>>>>>>>>> at > >>>>>>>>>>> org.apache.tomcat.util.net > >>>>>>>>> .SocketProcessorBase.run(SocketProcessorBase.java:49) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > >>>>>>>>>>> at java.lang.Thread.run(Thread.java:748) > >>>>>>>>>>> java.lang.NullPointerException > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.geronimo.microprofile.opentracing.microprofile.server.OpenTracingFilter.init(OpenTracingFilter.java:57) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:270) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:251) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:102) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4491) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5135) > >>>>>>>>>>> at > >>>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:743) > >>>>>>>>>>> at > >>>>> > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:719) > >>>>>>>>>>> at > >>>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:703) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar(TomcatWebAppBuilder.java:658) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps(TomcatWebAppBuilder.java:598) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.deployment.TomcatWebappDeployer.deploy(TomcatWebappDeployer.java:47) > >>>>>>>>>>> at > >>>>> org.apache.openejb.assembler.DeployerEjb.deploy(DeployerEjb.java:177) > >>>>>>>>>>> at > >>>>> org.apache.openejb.assembler.DeployerEjb.deploy(DeployerEjb.java:140) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.security.internal.InternalSecurityInterceptor.invoke(InternalSecurityInterceptor.java:35) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:191) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:102) > >>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > >>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.singleton.SingletonContainer._invoke(SingletonContainer.java:272) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.core.singleton.SingletonContainer.invoke(SingletonContainer.java:221) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbRequestHandler.doEjbObject_BUSINESS_METHOD(EjbRequestHandler.java:371) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:182) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:360) > >>>>>>>>>>> at > >>>>> org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:247) > >>>>>>>>>>> at > >>>>> org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:104) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.openejb.server.httpd.ServerServlet.service(ServerServlet.java:60) > >>>>>>>>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) > >>>>>>>>>>> at > >>>>> org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomee.catalina.OpenEJBSecurityListener$RequestCapturer.invoke(OpenEJBSecurityListener.java:97) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770) > >>>>>>>>>>> at > >>>>>>>>>>> org.apache.tomcat.util.net > >>>>>>>>> .NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415) > >>>>>>>>>>> at > >>>>>>>>>>> org.apache.tomcat.util.net > >>>>>>>>> .SocketProcessorBase.run(SocketProcessorBase.java:49) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > >>>>>>>>>>> at > >>>>>>>>>>> > >>> > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > >>>>>>>>>>> at java.lang.Thread.run(Thread.java:748) > >>>>>>>>>>> > >>>>>>>>>>> On Wed, Dec 19, 2018 at 2:33 PM Roberto Cortez > >>>>>>>>> <[email protected]> > >>>>>>>>>>> wrote: > >>>>>>>>>>> > >>>>>>>>>>>> It seems that the CDI Extensions are not running. I first > thought > >>>>> that > >>>>>>>>> it > >>>>>>>>>>>> was because of this setting: openejb.cdi.activated-on-ejb, > but it > >>>>>>>>> seems to > >>>>>>>>>>>> have the same effect. > >>>>>>>>>>>> > >>>>>>>>>>>> I’ll keep looking. > >>>>>>>>>>>> > >>>>>>>>>>>>> On 19 Dec 2018, at 13:21, Jonathan Gallimore < > >>>>>>>>>>>> [email protected]> wrote: > >>>>>>>>>>>>> I see the issue with surefire:test@test-tomee-remote-plus > too. > >>>>>>>>> Trying to > >>>>>>>>>>>>> get some more information. > >>>>>>>>>>>>> > >>>>>>>>>>>>> Jon > >>>>>>>>>>>>> > >>>>>>>>>>>>> On Wed, Dec 19, 2018 at 12:39 PM Jonathan Gallimore < > >>>>>>>>>>>>> [email protected]> wrote: > >>>>>>>>>>>>> > >>>>>>>>>>>>>> Here's my full output: > >>>>>>>>>>>>>> > >>>>> https://gist.github.com/jgallimore/ead9d0a218d862596858d7dc72bd6f62 > >>>>>>>>>>>>>> There's a few failures for test-tomee-remote-plus, and it > gets > >>>>> worse > >>>>>>>>>>>> when > >>>>>>>>>>>>>> testing test-tomee-webapp-* executions. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Hope that helps. Neat trick with the command line > >>>>>>>>>>>> @test-tomee-remote-plume > >>>>>>>>>>>>>> - thanks for that. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> Jon > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> On Wed, Dec 19, 2018 at 12:15 PM Roberto Cortez > >>>>>>>>>>>>>> <[email protected]> wrote: > >>>>>>>>>>>>>> > >>>>>>>>>>>>>>> I’m using this sample command now: > >>>>>>>>>>>>>>> mvn -Pall-adapters clean test-compile > >>>>>>>>>>>>>>> surefire:test@test-tomee-remote-plume > >>>>>>>>>>>>>>> > >>> -Dtest=org.apache.openejb.arquillian.tests.filter.AllFilterTest > >>>>>>>>>>>>>>> It seems to run fine on plus but not on plume. > >>> Investigating... > >>>>>>>>>>>>>>>> On 19 Dec 2018, at 11:44, Roberto Cortez > >>>>>>>>> <[email protected] > >>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>> Maybe it does run first. The problem is that the build is > >>>>> killed, > >>>>>>>>> so > >>>>>>>>>>>>>>> you don’t have a test report output. You have to go and > >>> manually > >>>>>>>>>>>> search the > >>>>>>>>>>>>>>> logs. > >>>>>>>>>>>>>>>> What is the exact test you see failing? I see a failure in > >>> the > >>>>> JMS > >>>>>>>>>>>>>>> project with a simple clean install: > >>>>>>>>>>>>>>>> JMSInjectionTest.testJMSInjection:68->validateTest:74 » IO > >>>>> Server > >>>>>>>>>>>>>>> returned HTT > >>>>>>>>>>>>>>>>> On 19 Dec 2018, at 11:18, Jonathan Gallimore < > >>>>>>>>>>>>>>> [email protected]> wrote: > >>>>>>>>>>>>>>>>> I'm not sure of the module ordering, but I thought this > ran > >>>>> first. > >>>>>>>>>>>> I'll > >>>>>>>>>>>>>>>>> check the CI output. > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> If you run a build without tests, and then run `mvn > >>>>> -Pall-adapters > >>>>>>>>>>>>>>> clean > >>>>>>>>>>>>>>>>> install` > >>>>>>>>>>>>>>>>> in > >>>>> arquillian/arquillian-tomee-tests/arquillian-tomee-webprofile-tests, > >>>>>>>>>>>>>>>>> you'll see the issue. > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Jon > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> On Wed, Dec 19, 2018 at 11:00 AM Roberto Cortez > >>>>>>>>>>>>>>> <[email protected]> > >>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Hi Jon, > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> I can have a look. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> It’s been hard to figure issues out, since we were not > able > >>>>> to > >>>>>>>>>>>>>>> stabilize > >>>>>>>>>>>>>>>>>> the TomEE build in build bot. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Apparently, it just keeps getting stuck in CDI TCK and > >>>>> timeouts. > >>>>>>>>>>>>>>>>>> Cheers, > >>>>>>>>>>>>>>>>>> Roberto > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> On 19 Dec 2018, at 10:28, Jonathan Gallimore < > >>>>>>>>>>>>>>>>>> [email protected]> wrote: > >>>>>>>>>>>>>>>>>>> I'm not sure if this is being discussed on other > threads, > >>>>> but it > >>>>>>>>>>>>>>> looks > >>>>>>>>>>>>>>>>>> like > >>>>>>>>>>>>>>>>>>> we have an issue with our arquillian tests failing. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> I did a git bisect late last night, and it looks like > it > >>> was > >>>>>>>>>>>>>>> introduced > >>>>>>>>>>>>>>>>>>> with the addition of microprofile to the plume and plus > >>>>>>>>>>>>>>> distributions. > >>>>>>>>>>>>>>>>>> I'm > >>>>>>>>>>>>>>>>>>> still going through my build output, but it looks like > we > >>>>> have a > >>>>>>>>>>>>>>> couple > >>>>>>>>>>>>>>>>>> of > >>>>>>>>>>>>>>>>>>> issues. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> Firstly, it looks like something in microprofile adds > >>>>> JAX-RS to > >>>>>>>>> the > >>>>>>>>>>>>>>> app, > >>>>>>>>>>>>>>>>>>> and that seems to get priority over everything, so, for > >>>>> example, > >>>>>>>>>>>> if I > >>>>>>>>>>>>>>>>>>> deploy a servlet with a URL mapping of "/" I can't get > to > >>>>> it - > >>>>>>>>> I'll > >>>>>>>>>>>>>>>>>> always > >>>>>>>>>>>>>>>>>>> get a 404. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> There seems to be another issue that prevents apps from > >>>>>>>>> deploying > >>>>>>>>>>>>>>> too. > >>>>>>>>>>>>>>>>>>> I'll continue analysis and post further details, but > also > >>>>> don't > >>>>>>>>>>>> want > >>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>> tread on toes, so if you're already looking at this, > >>> please > >>>>>>>>> shout! > >>>>>>>>>>>>>>>>>>> Cheers > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> Jon > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>> > >>>>> > >>> >
