无法使用Spring Boot访问JSP页面

时间:2017-07-17 15:36:32

标签: java spring-boot intellij-idea

我想在Spring Boot(1.5.4)中为jsp页面添加映射。首先,我开始在IntelliJ的项目中创建。然后我在pom.xml中添加了一些包。现在我在这个文件中有以下依赖项:

  • 弹簧引导起动thymeleaf
  • 弹簧引导起动的Web
  • Tomcat的嵌入-碧玉
  • 弹簧引导devtools
  • 弹簧引导起动测试
  • JS​​TL

接下来,我创建了一个类来为/login生成映射。

@Controller
public class LoginController
{
    @RequestMapping("/login")
    public String login()
    {
        return "login";
    }
}

我在login.jsp

的位置创建了src/main/webapp/web-inf/jsp个文件

enter image description here

最后,我在application.properties中添加了以下内容:

spring.mvc.view.prefix = /WEB-INF/jsp/
spring.mvc.view.suffix = .jsp

不幸的是,当我尝试访问localhost/login时,我收到了Whitelabel Error Page页面。 配置错过了什么?

1 个答案:

答案 0 :(得分:0)

我今天遇到了同样的问题,并在搜索解决方案时发现了你的问题。

这是一个常见的IntelliJ问题,所以,我会告诉你,我做了什么让应用程序工作(希望它会有所帮助)。

首先,尝试转到http://localhost:8080/login(您提到的localhost没有端口号)。 如果这没有帮助,请尝试以下步骤:

  1. 将您的包名称更改为与properties-file(WEB-INF而不是小写)相同的大小写。
  2. 转到项目结构(Windows / Linux上的CTRL + ALT + SHIFT + S) - >模块 - >找到包含项目名称的模块 - >扩展它 - >网络 - > Web资源目录:“Web资源目录” - 应该是您的webapp文件夹的路径(例如,在我的Linux机器上它是/ home / user / Documents / Java / Projects / myproject / src / main / webapp),“路径相对于部署根“ - ”/“(不含引号) - >适用。
  3. 返回与项目同名的模块,而不是Web选择Spring - >检查你的主类应该在那里提到两次,你的属性文件一次(如果没有,请用“+”按钮添加)。
  4. 单击选择运行/调试配置(主类名称靠近运行按钮的块) - >修改配置... - >代码覆盖率标签 - >用于记录覆盖率数据的包和类:添加包(绿色加上小包装图标按钮) - >输入你的类路径+“。”(不带引号)(例如,com.example。) - >是否有效并且包含/排除复选框应该被选中 - >行。
  5. 打开IntelliJ终端,输入“mvn clean install”(不带引号) - > ENTER - >等到这个过程结束 - >你应该看到类似的信息:

    [INFO]建立成功 [INFO] ----------------------------------------------- --------------- [INFO]总时间:9.339秒 [INFO]完成时间:2018-03-03T00:46:58 + 02:00 [INFO]最终记忆:36M / 273M [INFO]

  6. 转到浏览器 - > http://localhost:8080/login - >你的login.jsp页面应该出现(如果没有运气,请尝试在Windows / Linux上使用CTRL + F5来刷新网页现金)。

  7. 希望这会帮助你,因为它适合我。

    玩得开心! =)