SpringMVC处理静态资源异常

来源:互联网 发布:日剧 喜剧 知乎 编辑:程序博客网 时间:2024/04/29 12:42

SpringMVC处理静态资源异常

异常信息:

DEBUG [localhost-startStop-1] - Original ConversionService attempt
failed - ignored since PropertyEditor based conversion eventually
succeeded org.springframework.core.convert.ConversionFailedException:
Failed to convert from type java.util.ArrayList<?> to type
java.util.List<org.springframework.core.io.Resource> for value
‘[/js/]’; nested exception is
org.springframework.core.convert.ConverterNotFoundException: No
converter found capable of converting from type java.lang.String to
type org.springframework.core.io.Resource

案发现场:

配置了静态资源处理

<!-- 静态资源的解析 包括:js、css、img。。。 --><mvc:resources location="/js/" mapping="/js/**" />

同时又配置了日期转换器:

<mvc:annotation-driven conversion-service="conversionService"validator="validator"></mvc:annotation-driven><!-- 自定义参数绑定 --><bean id="conversionService"class="org.springframework.format.support.FormattingConversionServiceFact   oryBean"><!-- 转换器 -->    <property name="converters">        <!-- 日期类型的转换 -->        <list>        <bean class="cn.itcast.ssm.controller.converter.CustomDateConverter">   </bean>        </list>    </property></bean>

分析:自定义参数绑定中bean的id冲突,因为mvc:resources 的location属性值在新旧版本解析是不同的,新版本需要将String[]类型的location转成ArrayList类型,需要依赖ConversionService接口,而自定义参数绑定的id又恰好命名为conversionService,所以id相同覆盖掉了,会在控制台报异常(目前所遇并不影响正常功能)。

异常处理:

方法1:修改自定义参数绑定的id(非conversionService即可)。
(spring3.0之前可以使用)

方法2:(spring3.0之后建议使用)

处理静态资源用<mvc:default-servlet-handler/> 代替 <mvc:resources location="/js/" mapping="/js/**" /> 
  • 1
  • 2

方法3: web.xml里添加如下的配置

<servlet-mapping>     <servlet-name>default</servlet-name>     <url-pattern>*.css</url-pattern></servlet-mapping><servlet-mapping>    <servlet-name>default</servlet-name>    <url-pattern>*.gif</url-pattern></servlet-mapping><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>

【相关资料】http://www.cnblogs.com/LiuChunfu/p/5571600.html
http://blog.csdn.net/u012345283/article/details/43835763#comments
http://www.cnblogs.com/hujingwei/p/5349983.html

阅读全文
原创粉丝点击