【发布时间】:2021-07-13 12:56:41
【问题描述】:
我在初始化 spring 上下文时遇到了这个异常。
我可以确认我只使用了一个 spring 版本,即 5.3.3。
当我删除时,
<context:annotation-config />
<context:component-scan base-package="com" />
来自 xml 然后没有与此相关的错误。 同样的 applicationContext.xml 文件也在另一个分支中工作。
2021-07-13 05:05:01,832 INFO [stdout] (ServerService Thread Pool -- 121) DEBUG [4] (07/13/21 06:05:01:832): Startup Bean Invocation: 0 failed
2021-07-13 05:05:01,833 INFO [stdout] (ServerService Thread Pool -- 121) EXCEPTION [3] (07/13/21 06:05:01:833): org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [applicationContext.xml]; nested exception is org.springframework.beans.FatalBeanException: Class [org.springframework.context.config.ContextNamespaceHandler] for namespace [http://www.springframework.org/schema/context] does not implement the [org.springframework.beans.factory.xml.NamespaceHandler] interface: Exception occurred invoking Server Startup Bean
2021-07-13 05:05:01,835 ERROR [stderr] (ServerService Thread Pool -- 121) org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [applicationContext.xml]; nested exception is org.springframework.beans.FatalBeanException: Class [org.springframework.context.config.ContextNamespaceHandler] for namespace [http://www.springframework.org/schema/context] does not implement the [org.springframework.beans.factory.xml.NamespaceHandler] interface
2021-07-13 05:05:01,835 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:417)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:338)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:224)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:195)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:257)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:128)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:94)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractRefreshableApplicationContext.__refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
2021-07-13 05:05:01,836 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:40002)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:676)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractApplicationContext.__refresh(AbstractApplicationContext.java:558)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:41010)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:144)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:85)
2021-07-13 05:05:01,837 ERROR [stderr] (ServerService Thread Pool -- 121) at com.prescient.stnmm.server.beans.BeanAccess.<init>(BeanAccess.java:124)
【问题讨论】:
-
你有'spring-webmvc'依赖吗?
-
请使用代码标签添加完整的堆栈跟踪。另外,您如何运行/部署此应用程序? (我怀疑您正在部署到 Oracle WebLogic)。
-
是的 'spring-webmvc' 依赖存在。
-
@M.Deinum 我有 bean jar 文件,它是 ear 的一部分并将其部署在 Jboss EAP 7.2 上
-
他们的问题在于你。你和战争一样在两个耳朵里都有同样的罐子。导致类加载问题(不同类加载器中的同一个类不是同一个类,因此会出错)。
标签: spring spring-mvc applicationcontext