You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot内嵌Tomcat环境下JSP文件无法在浏览器渲染求助

Spring Boot JSP无法渲染的解决方案

针对你的问题,控制台能打印Inside home说明控制器方法已执行,但JSP不渲染,可按以下步骤排查修复:

1. 补充JSP相关依赖

Spring Boot默认不包含内嵌Tomcat的JSP解析依赖,需在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>

2. 调整JSP文件存放位置

Spring Boot对JSP的存放路径有严格要求,需将index.jsp移动到src/main/webapp/WEB-INF/jsp/目录下(若目录不存在则手动创建)。

3. 配置视图解析器

在application.properties中添加视图解析规则,让Spring能正确定位JSP文件:

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

4. 修改控制器返回值

控制器直接返回index.jsp会被当成字符串响应,需改为返回视图名称,让视图解析器自动拼接路径:

@Controller
public class HomeController {

    @RequestMapping("/")
    public String home(){
        System.out.println("Inside home");
        return "index"; // 去掉.jsp后缀,由视图解析器补充
    }
}

额外注意事项

  • 若使用jar包打包,Spring Boot对JSP的支持有限,建议将打包方式改为war(在pom.xml中设置<packaging>war</packaging>)。
  • 确保src/main/webapp目录被IDE正确识别为web资源目录,若未识别可手动在IDE中配置。

内容的提问来源于stack exchange,提问作者kaushiksarangi26

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 09:37:05