当前位置: 首页 > 知识库问答 >
问题:

Thymeleaf+Spring Security集成

严柏
2023-03-14

我使用Spring Initializr生成了一个Spring Bootweb应用程序,使用嵌入式Tomcat+Thymeleaf模板引擎,并将其打包为一个可执行的JAR文件。

使用的技术:

@Configuration
@PropertySource("classpath:/com/tdk/iot/config/app-${APP-KEY}.properties")
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Value("${securityConfig.formLogin.loginPage}")
    private String loginPage;

    @Override
    protected void configure(HttpSecurity http) throws Exception {

        http
            .formLogin()
                .loginPage(loginPage)
                .defaultSuccessUrl("/books/list")
                .permitAll()
                .and()
            .exceptionHandling()
                .accessDeniedPage("/denied")
                .and()
            .authorizeRequests()
                .antMatchers("/mockup/**").permitAll()
                .antMatchers("/dinners/**").permitAll()
                .antMatchers("/welcome/**").authenticated()
                .and()
            .logout()
                .permitAll()
                .logoutSuccessUrl("/index.html");
    }

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
        auth
            .inMemoryAuthentication()
                .passwordEncoder(new StandardPasswordEncoder())
                .withUser("test1").password("test1").roles("ADMIN").and()
                .withUser("test2").password("test2").roles("USER").and()
                .withUser("test3").password("test3").roles("SUPERADMIN");
    }




    @Bean
    public  static PropertySourcesPlaceholderConfigurer propertyDefaultConfig() {
        return new PropertySourcesPlaceholderConfigurer();
    }
}

这是我的登录模板

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
...
</head>
    <div class="wrap">
        <div class="login">
            <div class="logo"><img src="../../../images_pebloc/login.png" width="224" height="71"  /></div>

              <form th:action="@{/login.html}" method="post">
                <p th:if="${loginError}" class="error">Wrong user or password</p>
                    <div class="input_label"><i class="fa fa-user"></i><input type="text" name="user" placeholder="User" /></div>
                    <div class="input_label"><i class="fa fa-key"></i><input type="password" name="pass" placeholder="Password" /></div>

                </form>

              <input type="submit" value="LOGIN" />
            <div class="forget">
                <a href="#">Do you forgot your password?</a><br/>
                <br/>
                <span>tdk</span>
            </div>

        </div>
    </div>

但是,当我单击时,没有发生任何事情,控制台中没有HTML错误,没有javascript错误,没有表单错误,没有提交,无论我放在表单中的什么地方

共有1个答案

夏弘义
2023-03-14

提交按钮不在form标记中。将其移动到中,这将触发您的操作。

 类似资料:
  • 从一个项目的Spring MVC和Thymeleaf开始-但我面临着加载索引页面的问题- 我的控制器如下- 还有我的servlet。xml文件为 我的文件结构是-- 但是我有以下例外- 'springMVC' 我是否将文件放错了位置或控制器中丢失了什么?

  • 主要内容:1.入门,2.设置用户名和密码1.入门 1.启动一个SpringBoot项目 2.导入SpringSecurity相关依赖 3.编写Controller TestController.java 用户是user 密码是刚刚的 2.设置用户名和密码 1.在配置文件中设置 2.在配置类中设置 3.自定义实现类 2.1 配置文件中设置 2.2 在配置类中设置 设置用户名为zZZ,密码为root 2.3 自定义实现类 配置类: 业务类:

  • 在WAR的情况下,它试图将请求转发到/error页面,并寻找它的处理程序方法(请参见底部的日志)。 最后我得到以下回应: 我该换什么才能得到401?

  • 1.导入jar包 web.xml spring-security.xml

  • 我试图将视图与结合使用。我有一个实体,拥有一组电子邮件,我想在Thymeleaf模板中访问这些电子邮件: 在用户中。斯卡拉 在一些模板中。html 问题是Spring表达式求值器(Thymeleaf将表达式求值任务委托给它)只理解Java集合类型,因此试图获取Scala列表的第一个元素()/>)失败,出现异常。 我试图深入SpEL源代码,找到一个可以添加Java到Scala转换的地方。似乎如果我可

  • 本文向大家介绍springboot集成springsecurity 使用OAUTH2做权限管理的教程,包括了springboot集成springsecurity 使用OAUTH2做权限管理的教程的使用技巧和注意事项,需要的朋友参考一下 Spring Security OAuth2 主要配置,注意application.yml最后的配置resource filter顺序配置,不然会能获取token但