首页 > 移动平台 > 详细

java webapp项目设置index.html为主页失败

时间:2021-01-14 15:08:03      阅读:0      评论:0      收藏:0      [点我收藏+]

1. 新建一个webapp,能够直接访问index.html。但是加上了springmvc之后就访问不到了,初步判断原因是在web.xml中将所有的请求(即/)都映射到了DispatcherServlet,导致无法访问静态资源。

 

2. 看了SpringMVC项目配置欢迎页面为index.html”后,知道应该设置一个IndexController,用于返回index.html。于是我先添加了一个Controller

@Controller
public class IndexController {
    @RequestMapping("/")
    public ModelAndView index () {
        return new ModelAndView("index.html");
    }
}

然后在springmvc-servlet.xml中添加访问静态资源的配置(新手看到这我要提醒一下,下面的标签只是最关键的部分,关于详细的如何访问静态资源的方法请自行百度):

<mvc:resources mapping="/*.html" location="/"/>

 

3.  继续报错,错误为:

 技术分享图片

错误信息说noHandlerFound,也就是意味着我的请求没有找到具体的Controller。于是我就看了一下配置文件,但似乎没问题。难道是在启动web项目的时候,没有读取到配置文件?(注意,服务器启动日志中并没有提示没有找到配置文件)

于是看web.xml中关于配置文件的标签:

技术分享图片

这个classpath*:是什么意思我还没了解,只是从网上复制过来的。于是百度,发现原来classpath代表着WEB-INF/classes目录,然后再对比我的项目结构:

技术分享图片

诶!好像是我的config目录放错位置了。于是把config目录移到classes目录下后,再重启,成功访问到index.html

 

4.还没完。我在添加IndexController的时候其实是加了一句Syetem.out.println(hello1)的,如下所示:

技术分享图片

但是我在访问index.html的时候,控制台并没有输出“hello1”,难道IndexController并没有起作用?遂删掉IndexController,重启并访问index.html,能够正常访问。

于是得出最后的结论——在web.xmlspringmvc-servlet.xml的路径错了。(这个真难找,因为服务器启动日志没有报错说找不到文件)。

java webapp项目设置index.html为主页失败

原文:https://www.cnblogs.com/hdxg/p/14276409.html

(0)
(0)
   
举报
评论 一句话评论(0
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号