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
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>
> >>>>>
> >>>
>

Reply via email to