我试图去登录页面在我的Spring Boot应用程序,我得到了这个错误
Circular view path [/login.jsp]: would dispatch back to the current handler URL [/login.jsp] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.)
在stackoverflow上,人们给出的建议需要添加一个依赖项
('org.springframework.boot:spring boot starter thymeleaf')
但在那之后我犯了这个错误
There was an unexpected error (type=Internal Server Error, status=500).
Error resolving template "login", template might not exist or might not be accessible by any of the configured Template Resolvers
此错误表示Spring找不到模板登录。html在/resurses/templates
文件夹中。如果我有自己的登录名,我应该怎么做。jsp在另一个文件夹中,我不想使用任何模板?
这是我的登录映射
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String login(Model model, String error, String logout) {
if (error != null)
model.addAttribute("error", "Your username and password is invalid.");
if (logout != null)
model.addAttribute("message", "You have been logged out successfully.");
return "login";
}
这是我的安全配置
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/resources/**", "/registration").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.loginProcessingUrl("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
Spring Boot不会强迫你使用,它会鼓励你。
你可以使用。jsp
页面如果需要,您需要:
1-将其添加到main类中。java
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MainClass.class);
}
2-将其添加到应用程序中。属性
spring.mvc.view.prefix: /WEB-INF/jsp/
spring.mvc.view.suffix: .jsp
3-把你的。jsp
页面在映射文件夹中,您可以使用。jsp
而不是thymeleaf
。
简单,只需在控制器中为登录页面创建自己的映射,如:
@Controller
public class AppController{
@RequestMapping(value = "/login", method = RequestMethod.GET)
public ModelAndView login(@RequestParam(value = "error", required = false) String error,
@RequestParam(value = "logout", required = false) String logout, Model model, HttpServletRequest request) {
ModelAndView view = new ModelAndView();
if (error != null) {
view.addObject("error", "Invalid username and password!");
}
if (logout != null) {
view.addObject("msg", "You've been logged out successfully.");
}
view.setViewName("your-login-page");
return view;
}
}
配置应该是这样的:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().and()
.formLogin().loginPage("/login").loginProcessingUrl("/login").failureUrl("/login?error")
}
和应用。属性文件应该是这样的:
spring.thymeleaf.suffix=.your-file-type
spring.thymeleaf.prefix=/WEB-INF/jsp-pages/
其中"/WEB-INF/jsp-page/"是您的文件目录
本文向大家介绍springboot中thymeleaf模板使用详解,包括了springboot中thymeleaf模板使用详解的使用技巧和注意事项,需要的朋友参考一下 这篇文章将更加全面详细的介绍thymeleaf的使用。thymeleaf 是新一代的模板引擎,在spring4.0中推荐使用thymeleaf来做前端模版引擎。 thymeleaf介绍 简单说, Thymeleaf 是一个跟 Vel
本文向大家介绍SpringBoot使用thymeleaf模板过程解析,包括了SpringBoot使用thymeleaf模板过程解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了SpringBoot使用thymeleaf模板过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.导入依赖 2.application.yml文件中新
我有一个Spring Boot 2.1.6应用程序(Spring 5),我想使用Thymeleaf作为我的模板引擎。我按照在线教程来设置我的项目,视图和控制器,当我想启动它时,我注意到Thymeleaf抱怨说它找不到任何模板: 我想我设置的项目,因为它应该是(至少根据教程和论坛,我可以找到): 我的控制器如下所示: login.html是这样的: 当我打开登录页面时,我得到一个简单的超文本标记语言
本文向大家介绍SpringBoot中的Thymeleaf模板,包括了SpringBoot中的Thymeleaf模板的使用技巧和注意事项,需要的朋友参考一下 一、前言 Thymeleaf 的出现是为了取代 JSP,虽然 JSP 存在了很长时间,并在 Java Web 开发中无处不在,但是它也存在一些缺陷: 1、JSP 最明显的问题在于它看起来像HTML或XML,但它其实上并不是。大多数的JS
问题内容: 我正在使用Java 1.6.0_25。 我定义了一个注释: 后来当我使用getAnnotation时: 编译器和IDE同意我必须强制转换结果,但是getAnnotation在Java 1.5文档中声明为: 由于Resource.class是Class类型,在我看来,这意味着cls.getAnnotation(Resource.class)应该返回Resource类型,并且我需要进行强制
请建议如何解决这个问题。我被困在这里了。 下面是错误信息; null