Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

javax.management.InstanceAlreadyExistsException异常的问题 #1200

Closed
crab890715 opened this issue May 5, 2016 · 12 comments
Closed

javax.management.InstanceAlreadyExistsException异常的问题 #1200

crab890715 opened this issue May 5, 2016 · 12 comments

Comments

@crab890715
Copy link

在tomcat 7.0下面部署两个项目,两个项目都是使用了druid数据连接池,单独启动一个项目的时候没有问题,把另外一个项目换为别的数据库连接池两个同时启动也没有问题,但是当两个项目放到这同一个tomcat下启动时就会出现下面的错误。
帮忙看一下这个问题:http://www.oschina.net/question/1427693_236304

@wenshao
Copy link
Member

wenshao commented May 5, 2016

什么版本,这个应该早就修复了啊

@crab890715
Copy link
Author

crab890715 commented May 5, 2016

1.0.15,maven最新的1.0.18,没有做本地的中央库,所以直接用的网上的,但刚才用了最新的1.0.18也是存在这个问题的,直接导致jenkins发布失败

@crab890715
Copy link
Author

crab890715 commented May 5, 2016

`org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean [{
CreateTime:"2016-05-05 15:38:10",
ActiveCount:0,
PoolingCount:0,
CreateCount:0,
DestroyCount:0,
CloseCount:0,
ConnectCount:0,
Connections:[
]
}

[
]] with key 'dataSource'; nested exception is javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource
at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:625) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jmx.export.MBeanExporter.registerBeans(MBeanExporter.java:550) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jmx.export.MBeanExporter.afterSingletonsInstantiated(MBeanExporter.java:432) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.context.web.SpringBootServletInitializer.run(SpringBootServletInitializer.java:149) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:129) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:85) [spring-boot-1.3.2.RELEASE.jar:1.3.2.RELEASE]
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175) [spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5573) [catalina.jar:7.0.68]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) [catalina.jar:7.0.68]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) [catalina.jar:7.0.68]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) [catalina.jar:7.0.68]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) [catalina.jar:7.0.68]
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091) [catalina.jar:7.0.68]
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558) [catalina.jar:7.0.68]
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775) [catalina.jar:7.0.68]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_73]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_73]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_73]
at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_73]
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301) [tomcat-coyote.jar:7.0.68]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) [na:1.8.0_73]
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) [na:1.8.0_73]
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506) [catalina.jar:7.0.68]
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729) [catalina.jar:7.0.68]
at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447) [catalina.jar:7.0.68]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:653) [servlet-api.jar:na]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.68]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.68]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.68]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68]
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) [catalina.jar:7.0.68]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.68]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.68]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) [catalina.jar:7.0.68]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.68]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614) [catalina.jar:7.0.68]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.68]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.68]
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) [catalina.jar:7.0.68]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.68]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436) [catalina.jar:7.0.68]
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078) [tomcat-coyote.jar:7.0.68]
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) [tomcat-coyote.jar:7.0.68]
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) [tomcat-coyote.jar:7.0.68]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_73]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_73]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.68]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_73]
Caused by: javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource
at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437) ~[na:1.8.0_73]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898) [na:1.8.0_73]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966) [na:1.8.0_73]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900) [na:1.8.0_73]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324) [na:1.8.0_73]
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522) [na:1.8.0_73]
at org.springframework.jmx.support.MBeanRegistrationSupport.doRegister(MBeanRegistrationSupport.java:195) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jmx.export.MBeanExporter.registerBeanInstance(MBeanExporter.java:670) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:615) ~[spring-context-4.2.4.RELEASE.jar:4.2.4.RELEASE]
... 56 common frames omitted

2016-05-05 15:38:13.673 INFO 8886 --- [io-8080-exec-20] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/classes/, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/aopalliance-1.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/beacon-wechat-api-0.0.1-SNAPSHOT.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/beacon-wechat-service-0.0.1-SNAPSHOT.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/classmate-1.1.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-beanutils-1.9.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-codec-1.9.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-collections-3.2.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-io-2.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-lang3-3.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-logging-1.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/commons-pool2-2.4.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/dozer-5.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/druid-1.0.18.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/dubbo-2.5.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/emoji-java-3.0.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/fluent-hc-4.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/gson-2.3.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/guava-19.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/hibernate-validator-5.2.2.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpclient-4.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpcore-4.4.4.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/httpmime-4.5.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-annotations-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-core-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jackson-databind-2.6.5.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/javassist-3.18.1-GA.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jboss-logging-3.3.0.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jcl-over-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jedis-2.8.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jline-0.9.94.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/joda-time-2.9.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/json-20140107.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jstl-1.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/jul-to-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/log4j-over-slf4j-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/logback-classic-1.1.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/logback-core-1.1.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mybatis-3.2.8.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mybatis-spring-1.2.2.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/mysql-connector-java-5.1.6.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/netty-3.2.5.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/slf4j-api-1.7.13.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/snakeyaml-1.16.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-aop-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-beans-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-autoconfigure-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-logging-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-validation-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-boot-starter-web-1.3.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-context-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-context-support-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-core-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-data-redis-1.6.2.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-expression-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-jdbc-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-tx-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-web-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spring-webmvc-4.2.4.RELEASE.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/spymemcached-2.12.0.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/validation-api-1.1.0.Final.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/weixin-java-common-1.3.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/weixin-java-mp-1.3.3.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xmlpull-1.1.3.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xpp3_min-1.1.4c.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/xstream-1.4.7.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/zkclient-0.1.jar, file:/app/tomcat-7.0-app/webapps/app_test/WEB-INF/lib/zookeeper-3.3.3.jar]
May 05, 2016 3:38:13 PM org.apache.catalina.core.ContainerBase addChildInternal
SEVERE: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/app_test]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775)
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:497)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729)
at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:653)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean [{
CreateTime:"2016-05-05 15:38:10",
ActiveCount:0,
PoolingCount:0,
CreateCount:0,
DestroyCount:0,
CloseCount:0,
ConnectCount:0,
Connections:[
]
}

[
]] with key 'dataSource'; nested exception is javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource
at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:625)
at org.springframework.jmx.export.MBeanExporter.registerBeans(MBeanExporter.java:550)
at org.springframework.jmx.export.MBeanExporter.afterSingletonsInstantiated(MBeanExporter.java:432)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:792)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766)
at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
at org.springframework.boot.context.web.SpringBootServletInitializer.run(SpringBootServletInitializer.java:149)
at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:129)
at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:85)
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5573)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
... 41 more
Caused by: javax.management.InstanceAlreadyExistsException: com.alibaba.druid.pool:name=dataSource,type=DruidDataSource
at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:437)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1898)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:966)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:900)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:324)
at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at org.springframework.jmx.support.MBeanRegistrationSupport.doRegister(MBeanRegistrationSupport.java:195)
at org.springframework.jmx.export.MBeanExporter.registerBeanInstance(MBeanExporter.java:670)
at org.springframework.jmx.export.MBeanExporter.registerBeanNameOrInstance(MBeanExporter.java:615)
... 56 more

May 05, 2016 3:38:13 PM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive /app/tomcat-7.0-app/webapps/app_test.war
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/app_test]]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:903)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1091)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:558)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1775)
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:497)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1506)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:729)
at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:447)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:653)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)

May 05, 2016 3:38:13 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive /app/tomcat-7.0-app/webapps/app_test.war has finished in 8,577 ms`

@crab890715
Copy link
Author

我是把相同的项目打了两个包放在同一个tomcat容器里面,但他们的数据源不一样,一个是生产环境的配置一个是测试环境的配置,由于现在机器少,所以暂时放在一起了

@wenshao
Copy link
Member

wenshao commented May 5, 2016

出错堆栈中怎么会没有druid调用栈?

@crab890715
Copy link
Author

这里是启动的日志报错信息:
catalina.txt

@wenshao
Copy link
Member

wenshao commented May 5, 2016

这个更应该说是spring的bug,spring将实现了符合MBean规范的beans注册到mbeanserver中,但没处理好异常,所以悲剧了。

@crab890715
Copy link
Author

噢,好的,那我现在了解了,谢谢,我看看

@wenshao
Copy link
Member

wenshao commented May 5, 2016

不过我可以尝试做一些改进,看是否能够自动匹配好

@crab890715
Copy link
Author

那基本上我了解具体问题出在什么地方了,或许我可以暂时寻求另外的途径解决这个问题

@crab890715
Copy link
Author

crab890715 commented May 5, 2016

你好,感谢你的支持,我已经解决了,把spring的自动探测关闭掉了,应用还没有到全局复用对象的时候,即便使用也估计是使用RPC框架,以下是关闭jmx自动探测的spring配置

    <bean class="org.springframework.jmx.export.MBeanExporter">  
        <property name="autodetectModeName">  
            <value>AUTODETECT_NONE</value>  
        </property>  
    </bean> 

Spring提供了4个取值:
AUTODETECT_NONE 不启用自动探测,需要手动向MBean Server进行注册,即通过MBeanExporter的beans属性进入注册;
AUTODETECT_MBEAN 在当前IOC容器中进行查找MBean组件;
AUTODETECT_ASSEMBLER 设置根据MBeanInfoAssembler的策略进行探测;
AUTODETECT_ALL 自动探测,是AUTODETECT_MBEAN和AUTODETECT_ASSEMBLER的并集。

@wenshao
Copy link
Member

wenshao commented May 6, 2016

那我关闭啦

@wenshao wenshao closed this as completed May 6, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants