problem1 : spring mvc应用程序在运行时报错(注意并不是启动时报错) :java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/Dispatcher-servlet.xml]
解决:第一种方法(这个方式用来处理 配置文件名称不是默认的Dispatcher-servlet.xml)
a.在src目录下面添加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"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
classpath:/org/springframework/beans/factory/xml/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/login.do">loginController</prop>
</props>
</property>
</bean>
<bean id="loginController" class="com.pb.web.controller.LoginController">
<property name="successView" value="showAccount"></property>
<property name="failView" value="login"></property>
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
b.修改web.xml,添加init-param
其中param-value参数指定Dispatcher-servlet.xml(在这里为applicationContext.xml文件)文件所在位置
<servlet>
<!--这里决定Spring默认配置文件的名称为Dispatcher-servlet.xml。-->
<servlet-name>Dispatcher</servlet-name>
<!-- Spring首先会去找你指定的配置文件(这里是contextConfigLocation,指定配置文件位置)。如果你指定了配置文件的位置,那么spring就不会再去找默认的配置文件了-->
<!--如果你没有指定配置文件位置的话,Spring会去找默认配置文件(默认配置文件的文件名随servlet-name而定,这里是/WEB-INF/Dispatcher-servlet.xml配置文件)。-->
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
<!-- 也可以这样写
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
-->
</init-param>
</servlet>
第二种方式: 是在WEB-INF目录下添加[servlet-name]-servlet.xml文件,在这里是Dispatcher-servlet.xml
problem2: Spring在初始化xml配置文件,报错Cannot find the declaration of element 'beans'。
参考:http://llyzq.iteye.com/blog/1117288

17万+

被折叠的 条评论
为什么被折叠?



