【SpringMVC系列一】 EasyUI + SpringMVC 解决静态资源访问
2014-12-25 22:11
567 查看
我们的项目用的是EasyUI+SpringMVC+EJB+JPA,分享一下项目中遇到的一些问题及其解决方法。前台用的EasyUI,页面中引入了easyUI的js与css(引入路径正确),但是无论如何都显示不出来,如下图:
![](http://img.blog.csdn.net/20141225213840927?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
EasyUI的样式没有,看控制台:警告,找不到
再用浏览器调试,点进去之后:所有的js,css都是空的
![](http://img.blog.csdn.net/20141225213950175?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
综合上面的情况来看,没有显示出来js,css,猜测是js,css被拦截了。所以查了一下springMVC的配置,这个问题就被解决了。
配置完成之后,效果出来了:
![](http://img.blog.csdn.net/20141225214002390?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
点进去一个连接都会有显示的样式或者是js:
![](http://img.blog.csdn.net/20141225214014324?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
效果:
![](http://img.blog.csdn.net/20141225214022623?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1dGVuZ3RlbmcxMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
总结:
分析原因:在web.xml里面配置<servlet-mapping>下的<url-pattern>标签如下:<url-pattern>/<url-pattern>。即把所有的请求都交给spring去处理了,也就是说拦截了所有的请求。而所有的available的请求url都是在controller里面使用注解@RequestMapping()来配置的,这样访问js,css,jsp等这些静态资源就会访问不到,故需要配置。可以在web.xml里面进行相关的配置,但是没有试验成功;还可以在spring-servle.xml里进行配置,也就是上面用的方式。
<mvc:resources/>配置通过location属性制定静态资源的位置,由spring
MVC框架自己处理静态资源。并且允许静态资源放在任何地方,如WEB-INF目录下、类路径下,甚至可以打成Jar进行访问。
EasyUI的样式没有,看控制台:警告,找不到
21:26:25,643 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-1) No mapping found for HTTP request with URI[/itoo-basic-web/themes/default/easyui.css] in DispatcherServlet with name'action' 21:26:25,649 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-2) No mapping found for HTTP request with URI[/itoo-basic-web/themes/icon.css] in DispatcherServlet with name 'action' 21:26:25,656 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-5) No mapping found for HTTP request with URI[/itoo-basic-web/jquery.easyui.min.js] in DispatcherServlet with name 'action' 21:26:25,657 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-3) No mapping found for HTTP request with URI[/itoo-basic-web/demo/demo.css] in DispatcherServlet with name 'action' 21:26:25,666 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-4) No mapping found for HTTP request with URI[/itoo-basic-web/jquery.min.js] in DispatcherServlet with name 'action' 21:26:25,674 WARN [org.springframework.web.servlet.PageNotFound](http-localhost/127.0.0.1:8080-1) No mapping found for HTTP request with URI[/itoo-basic-web/jquery.easyui.min.js] in DispatcherServlet with name 'action'<span style="font-size: 14pt; font-family: 华文中宋; background-color: rgb(255, 255, 255);"> </span>
再用浏览器调试,点进去之后:所有的js,css都是空的
综合上面的情况来看,没有显示出来js,css,猜测是js,css被拦截了。所以查了一下springMVC的配置,这个问题就被解决了。
<!-- EasyUI样式,JS配置 刘腾腾 start--> <mvc:annotation-driven/> <mvc:resourceslocation="/demo/"mapping="/demo/**"></mvc:resources> <mvc:resourceslocation="/themes/"mapping="/themes/**"></mvc:resources> <mvc:resourceslocation="/locale/"mapping="/locale/**"></mvc:resources> <mvc:resourceslocation="/" mapping="/**"></mvc:resources> <!-- EasyUI样式,JS配置 刘腾腾 end-->
配置完成之后,效果出来了:
点进去一个连接都会有显示的样式或者是js:
效果:
总结:
分析原因:在web.xml里面配置<servlet-mapping>下的<url-pattern>标签如下:<url-pattern>/<url-pattern>。即把所有的请求都交给spring去处理了,也就是说拦截了所有的请求。而所有的available的请求url都是在controller里面使用注解@RequestMapping()来配置的,这样访问js,css,jsp等这些静态资源就会访问不到,故需要配置。可以在web.xml里面进行相关的配置,但是没有试验成功;还可以在spring-servle.xml里进行配置,也就是上面用的方式。
<mvc:resources/>配置通过location属性制定静态资源的位置,由spring
MVC框架自己处理静态资源。并且允许静态资源放在任何地方,如WEB-INF目录下、类路径下,甚至可以打成Jar进行访问。
相关文章推荐
- 【SpringMVC系列一】 EasyUI + SpringMVC 解决静态资源访问
- springMVC访问静态资源的解决办法
- springmvc解决静态资源无法访问的两种方法
- SpringMVC访问不到静态资源的几种解决方法!
- 解决SpringMVC 静态资源无法访问
- Springmvc框架静态资源访问404问题解决
- SpringMVC访问静态资源的三种方式
- SpringMVC配置静态资源访问
- springMVC静态资源路径问题解决办法
- SpringMVC访问静态资源的三种方式
- SpringMVC访问静态资源的三种方式
- SpringMVC请求访问不到静态文件解决方式
- SpringMVC 多控制器,静态资源访问,配置文件位置更改
- SpringMVC访问静态资源
- SpringMVC访问静态资源实例讲解
- SpringMVC访问静态资源的几种方法
- SpringMVC访问静态资源[转]
- springMVC访问静态资源
- RubyMine打开工程,启动后,静态资源(css、js、images等)访问不了,解决方法
- SpringMVC配置静态资源访问