java - spring boot tomcat jsp 已下载未呈现

标签 java spring spring-boot tomcat

我正在将我的 spring 应用程序引导到 spring boot,但我遇到了嵌入式 tomcat 不呈现 jsp 文件而不是下载文件的问题。

我已经用谷歌搜索并尝试了到目前为止我发现的所有内容,但我仍然做错了。

我的 pom.xml 文件中有以下依赖项

        <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

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

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

    <!-- Need this to compile JSP -->
    <dependency>
        <groupId>org.eclipse.jdt.core.compiler</groupId>
        <artifactId>ecj</artifactId>
        <version>4.6.1</version>
    </dependency>

从 application.properties 中剪裁

server.port=8080
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp

从 Controller 剪辑

    @GetMapping(value= "/")
public String showPage(Model theModel) {

    theModel.addAttribute("scrumbled", new Scrumbled());

    return "main";
}

下载 jsp 文件而不是在浏览器中显示和呈现我做错了什么?

提前致谢

最佳答案

问题出在 jasper 版本上。无论 tomcat 版本如何,它都适用于以下版本。

<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-jasper -->
  <dependency>
     <groupId>org.apache.tomcat</groupId>
     <artifactId>tomcat-jasper</artifactId>
     <version>9.0.24</version>`enter code here`
   </dependency>

我的 tomcat 版本是 9.0.63。

关于java - spring boot tomcat jsp 已下载未呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51729495/

相关文章:

css - Thymeleaf - 解析外部 CSS 文件?表达式、变量等

spring - 使用 JacksonJsonProvider.setMapper 时无法访问 javax.ws.rs.ext.MessageBodyReader

unit-testing - Spock 模拟在模拟一类 Spring 刻板印象 "Repository"时返回 null - 为什么?

java - 登录时访问被拒绝页面

java - Spring 3+。通过占位符中的前缀解析属性

java - 无法在Intellij中编译gradle vaadin项目

java - 在同一台机器上为不同的应用程序运行多个jvm

java - 等待线程创建并跳过已完成执行的线程

java - Spring mongodb 统计集合中的所有文档

java - ( Spring )th :with based on a condition