访问不了,css,js.静态资源,不知道配置错在哪里?
截图时,程序进行run中。币不多,却是真心想知道,我错在哪里,折腾了好久。
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.woff</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.ttf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.TTF</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.eot</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.svg</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>*.jpeg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.map</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</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>*.swf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.rar</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.pdf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.zip</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.doc</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.docx</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.xls</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.xlsx</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.ppt</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.pptx</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.txt</url-pattern>
</servlet-mapping>
<!-- accept video types -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.mp4</url-pattern>
</servlet-mapping>
加到 web.xml 里面
要在springmvc-srvlet里面配置一个不拦截的静态资源路径就行了
web.xml中你拦截用的是/,/表示对于所有的请求的拦截,包括静态资源如html, js, jpg等。你加上下边这一段试试
default
.jsp
-->
default
.js
default
.html
default
.css
把这个注释掉。再试一下
引用的时候直接../static/xxxx 这样可以么?还不行再试试 static/xxxxx
你看看你的xml文件配置静态资源了吗 ,如果没有先把静态资源配上 ,在启动不了 ,你在清楚一下缓存试试
,在新的workspace中,新建立了一个同样的。只做了,1.pom.xml依赖,2.web.xml配置了spring.springmvc.3.spring的xml没有动,springmvc.xml没动,4.访问静态资源,报404.原因被web.xml的dispatcher的/ 栏了,5.我在springmvc的xml中配置,.6.再访问,就可以访问了。
在springmvc-srvlet里面配置静态资源路径
mvc配置一下取消静态资源拦截就好了吧?
大晚上的回答问题哈
1.确定maven编译后target文件夹中是否存在静态文件
2.mvc:default-servlet-handler/和mvc:resources只保留一个,不要俩个同时存在
3.index.jsp中引用bootstrap.css和bootstrap.js的时候使用绝对路径
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
三种你都试试,仔细看过你的配置,但是由于不能直接测试,只能提供下思路
这些加到spring mvc 的配置文件开头,spring
mvc就能处理这个了相当于告诉spirng mvc,这个是静态文件
试试 /static/**/*
最后发现问题:
就为
没有/,返回时是/WEB-INF/viewsindex.jsp
有/,返回时是/WEB-INF/views/indes.jsp