前端技术

IDEA 中运行SpringBoot+JSP项目 页面404

2021-10-21 25 0

简介

错误如下: 404


Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

 

Thu Jan 18 11:01:36 CST 2018

There was an unexpected error (type=Not Found, status=404).

/WEB-INF/jsp/index.jsp

------------------


原因是 与idea创建工程的方式有关


learn-springboot

    |

    --- module1 (这是我们要运行的springboot+jsp项目)

    |

    --- module2



如果你将idea工程创建在learn-springboot这一级, 


在IDEA中运行module1时,在C:\Users\xxx\\AppData\Local\Temp这个目录下,会生成两个tomcat目录


其中, tomcat.xxxx.port这个目录下没有自动生成jsp java和class文件。


但是如果将idea工程建在module1这一级,


在IDEA中运行module1时,在C:\Users\xxx\AppData\Local\Temp这个目录下,只会生成tomcat.xxxx.port一个目录,而且当你在IE中访问时,在这个路径下会生成相应jsp java和class文件,相应的jsp文件也可以访问到,不会出现异常


在eclipse里运行没有异常,eclipse运行时只会生成tomcat.xxx.port目录,并且会自动生成jsp java和class文件。


其实,知道这一点,已经可以解决我的问题了。但是对于这个问题,中间还查到了其他的解决方式,也一并总结在这里吧。


1. 进入module1目录,使用mvn spring-boot:run方式启动,不会出现jsp文件找不到问题


2. 在module1中,增加如下配置类,也可以解决jsp文件找不到问题 

2. 在module1中,增加如下配置类,也可以解决jsp文件找不到问题 


@Configuration

public class TomcatConfig {

    @Bean

    public EmbeddedServletContainerFactory embeddedServletContainerFactory() {

        ConfigurableEmbeddedServletContainer factory = new TomcatEmbeddedServletContainerFactory();

        factory.setDocumentRoot(new File("D:\\Study\\learn-springboot\\module1\\src\\main\\webapp\\"));

        return (EmbeddedServletContainerFactory) factory;

    }

}



简单的解决方法:


upfile


点赞 0

文章评论

欢迎您:

阿文博客

人生的价值,并不是用时间,而是用深度量去衡量的。——列夫·托尔斯泰

59 文章 5993 浏览 5 评论

站点信息

  • 建站时间:2021-08-03
  • 更新时间:2021-08-03
  • 网站程序:终点线
  • 主题模板《今夕何夕》
  • 文章统计59篇文章
  • 标签总数14