晚上好,
我想监控我的 web 应用程序并了解 javamelody 的易用性。从文档来看,它应该像将 javamelody 和 jrobin 复制到 webapp 的 WEB-INF/lib 并重新启动 tomcat 一样简单。
但是当我在我的 WEB-INF/lib 中使用这两个 jar 启动 tomcat 时出现 WebBeansDeploymentException:javamelody-core-1.73.1.jar, jrobin-1.5.9.jar
我正在使用 openJPA,我的 beans.xml 文件是空的,但确实存在。
我的配置:
Apache Tomcat: 8.5
Java: 1.8
javaee-api: 7.0
javamelody-core: 1.71.3
jrobin: 1.5.9
由于我在 stackoverflow 或谷歌上没有找到太多关于这个问题的信息,我会感谢任何提示或链接以供进一步阅读!
提前致谢!
完整的堆栈跟踪:
2018 年 7 月 6 日晚上 10:45:27 org.apache.openejb.cdi.OpenEJBLifecycle startApplication 严重:CDI Beans 模块部署失败 org.apache.webbeans.exception.WebBeansDeploymentException:在 jar:file:/home/xxxxxxx/ 中定义的 WebBeans 配置Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody-core-1.73.1.jar!/META-INF/beans.xml 确实失败了. 原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle。
openejb.OpenEJBRuntimeException:org.apache.webbeans.exception.WebBeansDeploymentException:在 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject 中定义的 WebBeans 配置/WEB-INF/lib/javamelody-core-1.73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个 @InterceptorBinding at org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:200) at org.apache.openejb.cdi.ThreadSingletonServiceImpl。 initialize(ThreadSingletonServiceImpl.java:189) ... 15 更多原因:org.apache.webbeans.exception.WebBeansDeploymentException:在 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse 中定义的 WebBeans 配置.wst.服务器。core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody-core-1.73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的
2018 年 7 月 6 日晚上 10:45:27 sun.reflect.NativeMethodAccessorImpl 调用严重:ContainerBase.removeChild:destroy:org.apache.catalina.LifecycleException: 组件 [StandardEngine[Catalina] 尝试了无效的生命周期转换 ([before_destroy]) .StandardHost[localhost].StandardContext[/myproject]] 在 org.apache.catalina.util.LifecycleBase.invalidTransition(LifecycleBase.java:402) 的状态 [STARTING_PREP] 在 org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase .java:292) 在 org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:826) 在 org.apache.tomee.catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1627) 在 org.apache.tomee。 catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1607) 在 org.apache.tomee.catalina.TomcatWebAppBuilder。startInternal(TomcatWebAppBuilder.java:1307) 在 org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1124) 在 org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133) 在 org.apache .catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5087) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java :150) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1403) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) 在 java.util。 concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util。concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745)
createApplication(Assembler.java:717) at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1298) ... 11 更多原因:org.apache.openejb.OpenEJBRuntimeException: org.apache.webbeans.exception .WebBeansDeploymentException:在 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody-core- 中定义的 WebBeans 配置1.73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个 @InterceptorBinding at org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:200) at org.apache.openejb.cdi.ThreadSingletonServiceImpl。初始化(ThreadSingletonServiceImpl.java:189)... 15 更多原因:org.apache。webbeans.exception.WebBeansDeploymentException:在 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody 中定义的 WebBeans 配置-core-1.73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody-core-1.73.1中定义的WebBeans配置.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的 jar:file:/home/xxxxxxx/Projects/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject/WEB-INF/lib/javamelody-core-1.73.1中定义的WebBeans配置.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的 73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的 73.1.jar!/META-INF/beans.xml 确实失败了。原因是:拦截器类:net.bull.javamelody.MonitoringAsynchronousCdiInterceptor 必须至少有一个@InterceptorBinding at org.apache.webbeans.config.BeansDeployer.configureInterceptors(BeansDeployer.java:1464) at org.apache.webbeans.config.BeansDeployer。 deployFromXML(BeansDeployer.java:1338) 在 org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:256) 在 org.apache.openejb.cdi.OpenEJBLifecycle.startApplication(OpenEJBLifecycle.java:196) ... 16更多的
2018 年 7 月 6 日晚上 10:45:27 sun.reflect.NativeMethodAccessorImpl 调用严重:子容器在启动 java.util.concurrent.ExecutionException 期间失败:org.apache.catalina.LifecycleException:无法启动组件 [StandardEngine[Catalina]。 StandardHost[localhost]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.catalina.core.ContainerBase。 startInternal(ContainerBase.java:911) 在 org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 在 org.apache .catalina.core.StandardService.startInternal(StandardService.java:422) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 在 org.apache.catalina。core.StandardServer.startInternal(StandardServer.java:791) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.startup.Catalina.start(Catalina.java:655)在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method .invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495) 原因: org.apache.catalina.LifecycleException: 无法在 org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:167) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1403) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) 在 java.util.concurrent .FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java. lang.Thread.run(Thread.java:745) 原因:org.apache.catalina.LifecycleException: 子容器在 org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 在 org 启动期间失败.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 还有 6 个ContainerBase$StartChild.call(ContainerBase.java:1403) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) at java.util.concurrent.FutureTask.run(FutureTask.java:266)在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745 ) 原因:org.apache.catalina.LifecycleException:在 org.apache.catalina.core.StandardHost.startInternal( StandardHost.java:890) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 还有 6 个ContainerBase$StartChild.call(ContainerBase.java:1403) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) at java.util.concurrent.FutureTask.run(FutureTask.java:266)在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745 ) 原因:org.apache.catalina.LifecycleException:在 org.apache.catalina.core.StandardHost.startInternal( StandardHost.java:890) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 还有 6 个catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) 原因:org.apache.catalina.LifecycleException:子容器在从 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 的 org.apache.catalina.util.LifecycleBase 的 org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 开始。开始(LifecycleBase.java:150)... 6 更多catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) 原因:org.apache.catalina.LifecycleException:子容器在从 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 的 org.apache.catalina.util.LifecycleBase 的 org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 开始。开始(LifecycleBase.java:150)... 6 更多concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: org .apache.catalina.LifecycleException:子容器在 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 的 org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 启动期间失败) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 还有 6 个concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: org .apache.catalina.LifecycleException:子容器在 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 的 org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 启动期间失败) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 还有 6 个apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 在 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.爪哇:150)... 6更多apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919) 在 org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:890) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.爪哇:150)... 6更多
2018 年 7 月 6 日晚上 10:45:27 sun.reflect.NativeMethodAccessorImpl 调用严重:所需的服务器组件无法启动,因此 Tomcat 无法启动。org.apache.catalina.LifecycleException: 无法在 org.apache.catalina.startup.Catalina.start( Catalina.java:655) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java .lang.reflect.Method.invoke(Method.java:498) 在 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:355) 在 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java :495) 引起:组织。