出于某种原因,每当我尝试将属性添加到此类时,应用程序就会中断。无法确定需要配置哪个构造函数。
@Configuration
@AllArgsConstructor
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
private final AppUserService appUserService;
private final BCryptPasswordEncoder bCryptPasswordEncoder;
//without this line it works
private String newProp;
private FacebookConnectionSignup facebookConnectionSignup;
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.authenticationProvider(daoAuthenticationProvider());
}
@Bean
public DaoAuthenticationProvider daoAuthenticationProvider() {
DaoAuthenticationProvider provider =
new DaoAuthenticationProvider();
provider.setPasswordEncoder(bCryptPasswordEncoder);
provider.setUserDetailsService(appUserService);
return provider;
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.authorizeRequests()
.antMatchers("/api/v*/registration/**")
.permitAll()
.anyRequest()
.authenticated().and()
.formLogin();
}
@Bean
public ProviderSignInController providerSignInController() {
ConnectionFactoryLocator connectionFactoryLocator =
connectionFactoryLocator();
UsersConnectionRepository usersConnectionRepository =
getUsersConnectionRepository(connectionFactoryLocator);
((InMemoryUsersConnectionRepository) usersConnectionRepository)
.setConnectionSignUp(facebookConnectionSignup);
return new ProviderSignInController(connectionFactoryLocator,
usersConnectionRepository, new FacebookSignInAdapter());
}
private ConnectionFactoryLocator connectionFactoryLocator() {
ConnectionFactoryRegistry registry = new ConnectionFactoryRegistry();
registry.addConnectionFactory(new FacebookConnectionFactory("appId", "appSecret"));
return registry;
}
private UsersConnectionRepository getUsersConnectionRepository(ConnectionFactoryLocator
connectionFactoryLocator) {
return new InMemoryUsersConnectionRepository(connectionFactoryLocator);
}
}
启动应用程序上下文时出错。要显示条件,请报告启用“调试”后重新运行应用程序。2021-12-17 00:40:17.874错误21160 --- [ main]o. s. b. d.日志失败分析记者:
应用程序启动失败
说明:
com.example.demo.security.config.WebSecurityConfig中构造函数的参数2需要一个类型为“java.lang.字符串”的bean,但找不到。
行动:
考虑定义“java”类型的bean。配置中的lang.String。
进程结束,退出代码1
使用RequiredArgsConstructor注释而不是AllArgsConstructor,并最终确定此属性:
private final FacebookConnectionSignup facebookConnectionSignup;
我正在努力定制从OIM到OUD服务器作为目标资源的身份配置。 我已经能够使用默认属性执行配置,用户身份创建成功,并且能够在Spring web应用程序中使用它进行身份验证。现在我想添加基于用户位置的授权。用户的位置在OIM,所以我想将其提供给LDAP服务器,以避免手动编辑每个身份。 我已经搜索了很多,但我无法向预配过程添加其他属性,到目前为止,我只是修改了 OIM 中的协调和预配查找,但这还不够,
今天我对封装感兴趣,对此我有一个基本问题。我理解为什么需要为私有字段添加setter和getter方法。但我看到为public int编写,字符串是其他的setter和getter。为什么我们需要为公共字段添加属性?我已经可以从任何地方访问公共变量。你怎么能用塞特和盖特控制我?谢谢
简介 Apache ShardingSphere 提供属性配置的方式配置系统级配置。 配置项说明 名称 数据类型 说明 默认值 sql-show (?) boolean 是否在日志中打印 SQL。 打印 SQL 可以帮助开发者快速定位系统问题。日志内容包含:逻辑 SQL,真实 SQL 和 SQL 解析结果。 如果开启配置,日志将使用 Topic ShardingSphere-SQL,日志级别是 I
简介 Apache ShardingSphere 提供属性配置的方式配置系统级配置。 配置项说明 名称 数据类型 说明 默认值 sql-show (?) boolean 是否在日志中打印 SQL。 打印 SQL 可以帮助开发者快速定位系统问题。日志内容包含:逻辑 SQL,真实 SQL 和 SQL 解析结果。 如果开启配置,日志将使用 Topic ShardingSphere-SQL,日志级别是 I
这是我的配置类。 这是我的出版商课 我正在犯错误。 2020-10-04 14:28:24.628错误17008 --- [ 127.0.0.1:5672]o. s. a. r. c.CachingConnectionFactory:通道关闭:通道错误;协议方法:#方法