错误堆栈跟踪:
SEVERE: StandardWrapper.Throwable org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/dispatcher-servlet.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/dispatcher-servlet.xml]
调度员servlet.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:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:beans="http://springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/task/spring-task.xsd"> <mvc:annotation-driven/> <context:component-scan base-package="com.exam.www" /> <!-- Factory bean that creates the Mongo instance --> <bean id="mongo" class="org.springframework.data.mongodb.core.Mongofactorybean"> <property name="host" value="localhost" /> </bean> <!-- MongoTemplate for connecting and quering the documents in the database --> <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <constructor-arg name="mongo" ref="mongo" /> <constructor-arg name="databaseName" value="Results" /> </bean> <!-- Use this post processor to translate any MongoExceptions thrown in @Repository annotated classes --> <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" /> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/jsp" p:suffix=".jsp" /> <!-- <bean class="org.springframework.web.servlet.view.tiles2.TilesViewResolver"/> <bean class= "org.springframework.web.servlet.view.tiles2.TilesConfigurer"> --> <!-- <property name="definitions"> <list> <value>/WEB-INF/views/views.xml</value> </list> </property> </bean> --> </beans>
applicationContext.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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <!-- Root Context: defines shared resources visible to all other web components --> <!-- CSRF protection. Here we only include the CsrfFilter instead of all of Spring Security. See http://docs.spring.io/spring-security/site/docs/3.2.x/reference/htmlsingle/#csrf for more information on Spring Security's CSRF protection --> <!-- <bean id="csrfFilter" class="org.springframework.security.web.csrf.CsrfFilter"> <constructor-arg> <bean class="org.springframework.security.web.csrf.HttpSessionCsrfTokenRepository"/> </constructor-arg> </bean> --> <!-- Provides automatic CSRF token inclusion when using Spring MVC Form tags or Thymeleaf. See http://localhost:8080/#forms and form.jsp for examples --> <!-- <bean id="requestDataValueProcessor" class="org.springframework.security.web.servlet.support.csrf.CsrfRequestDataValueProcessor"/> --> </beans>
web.xml中
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <!-- <display-name>Spring With MongoDB Web Application</display-name> --> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/dispatcher-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <context-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/dispatcher-servlet.xml</param-value> </context-param> <welcome-file-list> <welcome-file>/search.jsp</welcome-file> </welcome-file-list> </web-app>
我在网上尝试了几种解决方案
1)赋予所有文件读,写权限 – 不起作用
2)添加init-param – 不起作用
3)明确地给出dispatcherservlet的路径为/WebContent/WEB-INF/dispatcher-servlet.xml – 不起作用.
我在Apache tomcat服务器v7.0上运行项目时出现此错误
过去4天我对此问题感到震惊.请帮我.
以下是有效的解决方案.
你的战争没有dispatcher-servlet.xml. 1)项目没有webapp文件夹.使用maven创建项目时要注意.您可以按照此处提到的步骤操作
http://blog.manishchhabra.com/2013/04/spring-data-mongodb-example-with-spring-mvc-3-2/
你会使用一些奇怪的maven原型创建项目.尝试上面的链接,它的工作原理.
我没有在互联网上找到其他解决方案.