Spring 报错:元素 "context:component-scan" 的前缀 "context" 未绑定的问题解决
Spring配置文件报错:元素"context:component-scan"的前缀"context"未绑定,这是我在做项目的时候遇到的,经过项目经理及同事提醒解决了,这里就说下如何解决。
1.spring配置信息如下
<?xmlversion="1.0"encoding="UTF-8"?> <beansxmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!--自动扫描dao和service包(自动注入)--> <<spanstyle="color:#ff00ff;">context:</span>component-scanbase-package="com.makelove88.**.dao,com.makelove88.**.service"/> <importresource="classpath*:*/applicationContext-*.xml"/> </beans>
2.错误信息如下
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:Line8inXMLdocumentfromURL[file:/E:/InstallSoftware/tomcat/tomcat7u50_8888/webapps/jms/WEB-INF/classes/applicationContext.xml]isinvalid;nestedexceptionisorg.xml.sax.SAXParseException;lineNumber:8;columnNumber:109;元素"context:component-scan"的前缀"context"未绑定。 atorg.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:399) atorg.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336) atorg.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) atorg.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) atorg.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) atorg.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) atorg.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125) atorg.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94) atorg.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129) atorg.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537) atorg.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:452) atorg.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403) atorg.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306) atorg.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106) atorg.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4961) atorg.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5455) atorg.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) atorg.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) atorg.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) atjava.util.concurrent.FutureTask.run(FutureTask.java:262) atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) atjava.lang.Thread.run(Thread.java:745) Causedby:org.xml.sax.SAXParseException;lineNumber:8;columnNumber:109;元素"context:component-scan"的前缀"context"未绑定。 atcom.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198) atcom.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177) atcom.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441) atcom.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368) atcom.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:325) atcom.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:289) atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786) atcom.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) atcom.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) atcom.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) atcom.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243) atcom.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347) atorg.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) atorg.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:429) atorg.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) ...22more 十一月09,201610:09:32上午org.apache.catalina.core.StandardContextlistenerStart 严重:Exceptionsendingcontextinitializedeventtolistenerinstanceofclassorg.springframework.web.context.ContextLoaderListener
【问题分析】
配置文件中使用了context标签,但未声明。
【解决方案】
在配置文件中加上context的声明
<?xmlversion="1.0"encoding="UTF-8"?> <beansxmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <spanstyle="color:#ff00ff;">xmlns:context="http://www.springframework.org/schema/context" </span> xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd <spanstyle="color:#ff00ff;">http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd </span>"> <!--自动扫描dao和service包(自动注入)--> <context:component-scanbase-package="com.makelove88.**.dao,com.makelove88.**.service"/> <importresource="classpath*:*/applicationContext-*.xml"/> </beans>
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!