spring MVC靜態資原始檔異常
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Cannot locate BeanDefinitionParser for element [default-servlet-handler]
今天配置spring MVC配置檔案時,總是報上面一行錯誤資訊,一直百度搜索問題所在之處。不容易,找了一個晚上,總算是摸出點頭緒。我的配置是spring 3.0配置,springMVC配置檔案中有這一配置:
<!--設定配置方案 -->
<mvc:annotation-driven/>
<!--使用預設的Servlet來響應靜態檔案-->
<mvc:default-servlet-handler/>
發現<mvc:default-servlet-handler/>配置是spring 3.0.4以上版本在支援,因為我的是spring 3.0 配置,所以會報錯。
解決方案(二選其一):
1.spring jar 更換成spring 4.0 或者spring 3.0.4以上版本的。
2.在web.xml中加上靜態檔案的配置
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
我使用的myeclipse 8.5自帶的spring。myeclipse最高支援的就是spring3.0版本。之前使用myeclipse 10 以及myeclipse 2014都沒有出現此類問題。
https://blog.csdn.net/GeeLoong/article/details/72476688