webroot下可以放css,浏览器不能访问WebRoot下的静态文件:样式、图片等的解决办法...

本文解决,java web 项目部署后,JSP页面不能访问webRoot下的所有静态文件,包含图片、样式文件、js等的解决办法。

注意:本文仅仅讲述静态文件防止的路径正确但是不能加载的问题,如果您的静态文件没有放到WebRoot下,或者放到了WEB-INF下,浏览器不能访问是正常的情况,只需要将WEB-INF下的静态资源转移到WebRoot下即可。

先说明下我遇到的问题:

index.jsp页面中引用了WebRoot下的css/generalStyle.css样式,文件放置的位置也正确(并没有放到WEB-INF下),但是部署到TOMCAT中后,显示样式文件404,这是什么原因?

如下图:

1510996510135032383.png

解决方法如下:

首先,我在项目中使用了SPring框架,Web.xml中配置了拦截器(出现这个问题的很多人都描述,当删除web.xml中的拦截器,就能够加载出图片),同时在applicationContext.xml中配置各种Spring的配置。

实践中发现,如果web.xml中的拦截器配置了拦截"/",则在applicationcontext.xml中必须设置防止静态文件被拦截的代码;如果您web.xml中配置的拦截器不是拦截的"/",则不会出现webroot下的静态文件被拦截。

因此,假如您在web.xml中配置了“/”的拦截器:

springMvc

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:applicationContext.xml

springMvc

/

那么,在applicationContext.xml中必须添加如下的配置:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值