【发布时间】:2020-06-30 12:19:09
【问题描述】:
我使用的是 spring boot 2.2.2,旧的 spring 和依赖项可以正常工作,现在相同的代码不起作用
package com.project.productapp.controller;
import com.project.productapp.service.ProductService;
import com.project.productapp.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@Controller
public class ProductController {
@Autowired
ProductService productService;
@Autowired
private UserRepository repository;
@GetMapping(path = "/products")
public String getProducts(Model model){
model.addAttribute("products", repository.findAll());
return "product";
}
@GetMapping(path = "/logout")
public String logout(HttpServletRequest request) throws ServletException {
request.logout();
return "/";
}
}
getProducts 或注销都不起作用。如果我设置断点,它就会被命中。我使用浏览器请求它,去http://localhost:8081/logout
错误:
2020 年 3 月 19 日星期四 11:58:45 CET 出现意外错误 (类型=内部服务器错误,状态=500)。解析模板时出错 [/],模板可能不存在或可能无法被任何 配置的模板解析器 org.thymeleaf.exceptions.TemplateInputException:错误解决 模板 [/],模板可能不存在或可能无法访问 任何已配置的模板解析器 org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateManager.java:869) 在 org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:607) 在 org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098) 在 org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072) 在 org.thymeleaf.spring5.view.ThymeleafView.renderFragment(ThymeleafView.java:362) 在 org.thymeleaf.spring5.view.ThymeleafView.render(ThymeleafView.java:189) 在 org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1373) 在 org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1118) 在 org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1057) 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) 在 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) 在 org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:634) 在 org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
product.ftl 位置正确(在注销功能中甚至不需要)
【问题讨论】:
标签: java spring spring-boot spring-mvc thymeleaf