我在Eclipse的tomcat中运行一些servlet代码。一切正常,但今天我得到了错误Unable to locate Spring NamespaceHandler for XML schema namespace。完整的错误如下所示:
Unable to locate Spring NamespaceHandler for XML schema namespace
SEVERE: Allocate exception for servlet RunServlet org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/tx] Offending resource: class path resource [spring/dao.xml]
我已经看过有关此错误的其他问题,但我不太了解答案。
当我查看目标库时,可以看到它spring-tx-3.0.5.RELEASE.jar在中WEB-INF/lib。
spring-tx-3.0.5.RELEASE.jar
WEB-INF/lib
谁能帮我吗?
非常感谢!
编辑:dao.xml开始:
dao.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
编辑:不确定是否与此有关,但是我正在研究Mac book pro,并且最新的mac更新已更新为Java 1.6,而我只是将Java偏好设置切换为1.6。
编辑:我也在Tomcat日志中收到以下消息,但我想我以前就收到了,并且我认为它不相关,但以防万一:
INFO: Starting Servlet Engine: Apache Tomcat/7.0.14 Jul 6, 2011 11:59:55 AM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(/Users/bw/Documents/workspace2/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/core/WEB-INF/lib/servlet-api-2.5.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
编辑:对不起-没有看到您的评论。这是的清单WEB-INF。
WEB-INF
b-ws-macbook-pro:lib bw$ ls -ltr total 13456 -rw-r--r-- 1 bw staff 62983 May 14 09:26 activation-1.1.jar -rw-r--r-- 1 bw staff 53082 May 14 09:26 spring-asm-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 60686 May 14 09:26 commons-logging-1.1.1.jar -rw-r--r-- 1 bw staff 61379 May 14 09:26 spring-oxm-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 4467 May 14 09:26 aopalliance-1.0.jar -rw-r--r-- 1 bw staff 100870 May 14 09:26 spring-context-support-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 62086 May 14 09:26 commons-pool-1.3.jar -rw-r--r-- 1 bw staff 169752 May 14 09:26 spring-expression-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 175412 May 14 09:27 spring-webmvc-portlet-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 121757 May 14 09:27 commons-dbcp-1.2.2.jar -rw-r--r-- 1 bw staff 321190 May 14 09:27 spring-aop-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 231922 May 14 09:27 spring-tx-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 334327 May 14 09:27 spring-orm-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 371792 May 14 09:27 mybatis-2.3.5.jar -rw-r--r-- 1 bw staff 382442 May 14 09:27 spring-core-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 418977 May 14 09:27 spring-webmvc-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 388864 May 14 09:27 mail-1.4.jar -rw-r--r-- 1 bw staff 395587 May 14 09:27 spring-web-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 668861 May 14 09:27 spring-context-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 555410 May 14 09:27 spring-beans-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 385712 May 14 09:27 spring-jdbc-3.0.5.RELEASE.jar -rw-r--r-- 1 bw staff 512707 May 14 09:27 mysql-connector-java-5.0.5.jar -rw-r--r-- 1 bw staff 610790 May 14 09:27 c3p0-0.9.1.2.jar -rw-r--r-- 1 bw staff 391834 May 14 09:27 log4j-1.2.15.jar
编辑:谢谢,克里斯蒂安。不过,这很奇怪,因为我的jar中始终都没有该文件,因此我按提供的方式列出了该文件:
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency>
我确定我在这里遗漏了一些东西。
编辑:嗯..现在Tomcat甚至找不到applicationContext。我认为我的设置有些奇怪。
applicationContext
我已修复它,但我真的不知道如何。我在启动Tomcat时读了这篇文章ClassNotFoundExceptionDispatcherServlet(Maven依赖关系未复制到wtpwebapps),看到我有同样的事情-“标记”窗格中的构建列出了一个问题。我运行了建议的快速修复程序,现在一切正常。就像我说的那样,自几天前以来我从未碰过它。显然,有时它会变得混乱。6小时后..谢谢大家的建议,伙计们。