Spring Boot整合JSP出现白标错误页,可能原因有哪些?
以下是针对你遇到的JSP页面无法展示、出现白标错误页的常见排查方向:
缺少JSP相关依赖
Spring Boot默认不包含JSP运行所需的依赖,需手动添加。如果是Maven项目,在pom.xml中加入以下依赖:<dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>Gradle项目则在
build.gradle中添加:implementation 'javax.servlet:jstl' providedRuntime 'org.apache.tomcat.embed:tomcat-embed-jasper'项目结构不符合规范
确保JSP文件路径与配置一致:需放在src/main/webapp/WEB-INF/views/目录下(即src/main/webapp/WEB-INF/views/welcome.jsp)。如果项目中没有webapp目录,需手动创建该目录(Maven/Gradle的Web项目默认目录结构),不要将JSP放在src/main/resources下,否则Spring Boot无法识别。打包方式错误
Spring Boot的jar打包格式不支持JSP,需将打包方式改为war。在Maven的pom.xml中修改:<packaging>war</packaging>Gradle项目则应用war插件:
plugins { id 'war' }视图解析器配置校验
检查application.properties中的视图配置是否存在拼写错误,比如prefix/suffix的单词拼写、路径末尾的斜杠是否正确。你的配置spring.mvc.view.prefix=/WEB-INF/views/和spring.mvc.view.suffix=.jsp是正确的,但需确保配置文件被正确加载(比如放在src/main/resources下)。日志排查具体错误
查看应用启动及访问/welcome时的日志,若存在类似Could not resolve view with name 'welcome'的报错,说明Spring无法找到对应的JSP文件;若有依赖缺失相关报错,需补全对应依赖。
内容的提问来源于stack exchange,提问作者Aswathy

