Skip to main content
 首页 » 编程设计

spring-boot之JSP 文件未在 Spring Boot Web 应用程序中呈现

2024年02月27日39jpfss

我使用嵌入式 Tomcat(默认)启动并运行了一个 Spring Boot Web 应用程序。当它提供 JSP 文件作为呈现我在 Controller 中指定的 View 的一部分时,JSP 不会这样呈现,而是打印出内容。例如:

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> 
<!DOCTYPE html> 
<html lang="en"> 
    <head></head> 
    <body>Test</body> 
</html> 

当 View 在浏览器中渲染时,会显示上面的内容,而不是预期的内容:

Test 

请您参考如下方法:

确保您的 pom.xml 指定 Tomcat JSP 依赖项,如下所示:

<dependency> 
    <groupId>org.apache.tomcat.embed</groupId> 
    <artifactId>tomcat-embed-jasper</artifactId> 
    <scope>provided</scope> 
</dependency> 

嵌入式 Tomcat 似乎将 JSP 渲染视为可选。

如下所述,这个 JAR 有时也是必要的:

<dependency> 
    <groupId>javax.servlet</groupId> 
    <artifactId>jstl</artifactId> 
    <scope>provided</scope> 
</dependency> 

(我添加了provided,因为这个JAR应该包含在servlet容器中。