我正在尝试在我的 Spring Boot 服务中添加一个 jsp 页面。我的问题是,每次我尝试访问该页面时,我都会遇到以下问题:
白标错误页面
此应用程序没有针对 /error 的显式映射,因此您将其视为后备。
2015 年 4 月 21 日星期二 23:16:00 EEST 出现意外错误(类型 = 未找到,状态 = 404)。没有可用的消息
我已将前缀和后缀添加到我的 application.properties 中:
spring.view.prefix: /WEB-INF/jsp/
spring.view.suffix: .jsp
这是我的控制器类:
@Controller
public class MarkerController {
@RequestMapping(value="/map")
public String trafficSpy() {
return "index";
}
}
我的应用程序类:
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
private static Logger logger = Logger.getLogger(Application.class.getName());
public static void main(String[] args) {
logger.info("SPRING VERSION: " + SpringVersion.getVersion());
SpringApplication.run(Application.class, args);
}
}
和 index.jsp:
<!DOCTYPE html>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html lang="en">
<body>
<h1>Hello, World!!!</h1>
<p>JSTL URL: ${url}</p>
</body>
</html>
这是 src 文件结构:
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── internetprogramming
│ │ │ └── myserver
│ │ │ └── server
│ │ │ ├── Application.java
│ │ │ ├── config
│ │ │ │ └── DatabaseConfig.java
│ │ │ ├── controller
│ │ │ │ └── MarkerController.java
│ │ │ ├── dao
│ │ │ │ ├── MarkerDaoImplementation.java
│ │ │ │ └── MarkerDaoInterface.java
│ │ │ ├── Marker.java
│ │ │ └── service
│ │ │ ├── MarkerServiceImplementation.java
│ │ │ └── MarkerServiceInterface.java
│ │ ├── resources
│ │ │ └── application.properties
│ │ └── webapp
│ │ └── WEB-INF
│ │ └── jsp
│ │ └── index.jsp
原文由 dephinera 发布,翻译遵循 CC BY-SA 4.0 许可协议
确保在依赖项列表中有 jasper 和 jstl:
这是一个工作的入门项目 - https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-web-jsp