无法使用 Spring Boot 和 MVC 找到/渲染 JSP 文件

Posted

技术标签:

【中文标题】无法使用 Spring Boot 和 MVC 找到/渲染 JSP 文件【英文标题】:Can't find / render JSP file with Spring Boot & MVC 【发布时间】:2016-05-08 14:36:21 【问题描述】:

我正在尝试在 IntelliJ IDEA 中使用 Spring 构建我的第一个应用程序,但是我无法让它找到和/或呈现名为 home.jsp 的 JSP 文件。请看截图。任何帮助将不胜感激。如果您对我的设置有任何疑问,请发表评论,我会回答。

这是我在 Gradle 中的依赖项列表

dependencies 
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('org.apache.tomcat.embed:tomcat-embed-jasper:8.0.30')
    runtime('org.hsqldb:hsqldb')
    testCompile('org.springframework.boot:spring-boot-starter-test') 

【问题讨论】:

Hello!.jsp 页面在哪里? 在 WebMvcConfig 中。你能删除pub文件夹吗?我在您的项目中没有找到任何“pub”文件夹 @FarazDurrani 请注意那里的 ResponseBody 注释。我这样做只是为了验证控制器是否工作并且确实有效。那里不需要 JSP,对吧? @Shaheer 这只是意味着我将 URL /pub/** 映射到路径 /resources/ 所以 pub 就我所知不是真正的路径。在控制台中,我看到:将 URL 路径 [/pub/**] 映射到 [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 类型的处理程序上 【参考方案1】:

我将 JSP 文件放在 /webapp/WEB-INF/views/ 下,现在它可以工作了。我认为这与 intellij 未自动创建的 webapp 目录有关。 Tomcat 可能会在这里查找一些文件。

【讨论】:

以上是关于无法使用 Spring Boot 和 MVC 找到/渲染 JSP 文件的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Spring MVC 4 和 Hystrix 集成在没有 Spring boot API 的情况下无法工作?

我们可以在一个项目中同时使用 Java Spring mvc 和 Spring Boot 吗?

Spring-Boot MVC 模板未加载(未找到 404)

使用 Spring Boot + Hibernate + MySql 运行 MVC 应用程序

使用 Spring MVC 运行 Spring Boot 时引发空指针异常

在 Spring Boot App 中使用 Jquery 和 FormData 提交表单字段并上传 File 到 Spring MVC Controller