最近在WAS中部署springMVC的项目,使用了拦截器对所有的请求进行拦截,包括了静态资源,在网上查找了许多资料,大体的配置是在web.xml 中配置:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
<url-pattern>*.png</url-pattern>
<url-pattern>*.js</url-pattern>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
在springMVC-servlet.xml 增加如下配置:
<!-- don't handle the static resource -->
<mvc:default-servlet-handler />
但是启动项目开始报错,大概意思就是没有为“.css”的mapping找到相应的servlet,后来查找了许多资料发现,websphere没有默认的default servlet, tomcat有,最后配置如下解决问题,在web.xml 文件中配置上default servlet 在加上mapping即可:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>com.ibm.ws.webcontainer.servlet.SimpleFileServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
<url-pattern>*.png</url-pattern>
<url-pattern>*.js</url-pattern>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>