spring boot with dubbo 2.6.3, cause ‘ Cannot initialize context because there is already a root application context present - check whether you have multiple ContextLoader* definitions in your web.xml’
See original GitHub issueEnvironment
- Dubbo version: 2.6.3
- Operating System version: Linux ubuntu 4.9.0
- Java version: 1.8
- tomcat-7.0.82.4
- spring boot 2.0.1.RELEASE
Steps to reproduce this issue
a web spring boot project use dubbo as a consumer,when deploy it to tomcat-7.0.82.4 ,start the applicaton failed, but it start success in IDE without tomcat
Pls. provide [GitHub address] to reproduce this issue.
Expected Result
web project start success
Actual Result
failed
If there is an exception, please attach the exception trace:
[ERROR] - Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.IllegalStateException: Cannot initialize context because there is already a root application context present - check whether you have multiple ContextLoader* definitions in your web.xml!
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:262)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5110)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5633)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1015)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:991)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1296)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:2038)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Issue Analytics
- State:
- Created 5 years ago
- Comments:9 (3 by maintainers)
Top Results From Across the Web
[GitHub] chenlushun commented on issue #2535: spring boot with ...
... context because there is already a root application context present - check whether you have multiple ContextLoader* definitions in your web.xml'.
Read more >spring - Cannot initialize context, already a root application ...
IllegalStateException : Cannot initialize context because there is already a root application context present - check whether you have multiple ...
Read more >Spring Security : check whether you have multiple ...
IllegalStateException : Cannot initialize context because there is already a root application context present - check whether you have multiple ...
Read more >Spring created multiple ContextListner? - Forums - Liferay
... because there is already a root application context present - check whether you have multiple ContextLoader* definitions in your web.xml! java.lang.
Read more >java.lang.illegalargumentexception: could not resolve ...
springboot 启动时会检索@Value 对应配置文件中的key,当该key不存在时就会 ... To display the conditions report re-run your application with 'debug' enabled.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
dubbo 2.6.3 默认添加了 web-fragment.xml,这个特性基于 servlet 3.0 ,容器会自动扫描这个文件,dubbo-fragment.xml 里面添加一个ContextLoaderListener。Spring Boot 2.0 也基于 Servlet 3.0 添加这个listener,这样就会报错,算是Dubbo的bug。添加一个web.xml 关闭这个特性就好了。
有同样问题,回退到2.6.2就好了,未有任何改动。但是为什么2.6.5就不行