首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >创建名为“projectingArgumentResolverBeanPostProcessor”的bean时出错

创建名为“projectingArgumentResolverBeanPostProcessor”的bean时出错
EN

Stack Overflow用户
提问于 2019-04-06 13:14:42
回答 2查看 13.7K关注 0票数 1

我在我的项目中设置了我的网络安全,但是我看到了一个错误。这是错误

在类路径资源org/springframework/data/web/config/ProjectingArgumentResolverRegistrar.class: BeanPostProcessor中定义了名为“projectingArgumentResolverBeanPostProcessor”的bean创建bean失败之前的错误;嵌套的异常是创建名为“元metaDataSourceAdvisor”的bean时org.springframework.beans.factory.BeanCreationException:错误:在设置构造函数参数时不能解析对bean 'methodSecurityMetadataSource‘的引用;嵌套异常是org.springframework.beans.factory.BeanCreationException:错误创建类路径资源中定义的名为'methodSecurityMetadataSource‘的bean,org/springframework/security/config/annotation/method/configuration/GlobalMethodSecurityConfiguration.class: Bean通过工厂方法实例化失败,嵌套异常是org.springframework.beans.BeanInstantiationException:未能实例化org.springframework.security.access.method.MethodSecurityMetadataSource:工厂方法'methodSecurityMetadataSource’抛出的异常;嵌套异常是java.lang.IllegalStateException:在所有全局方法配置的组合中,实际上在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:510) ~spring 5.1.5 RELEASE.jar:5.1.5 support在org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320) ~spring 5.1.5.RELEASE.jar:5.1.5.RELEASE在org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222中没有激活任何注释支持。)~spring 5.1.5.RELEASE.jar:5.1.5.RELEASE在org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318) ~spring 5.1.5.RELEASE.JAR:5.1.5.RELEASE在org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:204) ~5.1.5.RELEASE 5.1.5.RELEASE.jar:5.1.5.RELEASE在org.springframework。context.support.PostProcessorRegistrationDelegate.registerBeanPostProcessors(PostProcessorRegistrationDelegate.java:240) ~spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE at org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:721) ~spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:534) ~spring-context-5.1.5 RELEASE.jar:5.1org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:142) ~ .5.RELEASE - org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) -2.1.3.RELEASE.jar:2.1.3..5.RELEASE在org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)弹簧-2.1.3.RELEASE.jar:2.1.3.RELEASE在org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)弹簧-引导-2。1.3.RELEASE.JAR:2.1.3 org.springframework.boot.SpringApplication.run(SpringApplication.java:316)弹簧的2.1.3 RELEASE.jar:2.1.3 RELEASE.jar:2.1.3.RELEASE在org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)弹簧-2.1.3.RELEASE.JAR:2.1.3.RELEASE在org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)spring-boot-2.1.3 RELEASE.jar:2.1.3. com.supermarket.SupermarketApplication.main(SupermarketApplication.java:19)类/:na中的classes

我的鳕鱼是:

代码语言:javascript
运行
复制
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter{
    @Autowired
    private Environment env;
    @Autowired
    private UserSecurityService usersecurityservice;
    private BCryptPasswordEncoder passwordencoder(){
        return SecurityUtility.passwordEncoder();
    }
    private static final String[]PUBLIC_MATCHES = {
            "/css/**",
            "/js/**",
            "/img/**",
            "/signUp",
            "/",
            "/newUser",
            "/forgetPassword",
            "/login",
            "/fonts/**",
            "/bookshelf/**",
            "/bookDetail/**",
            "/hours",
            "/faq",
            "/searchByCategory",
            "/searchBook"

    };
@Override
protected void configure(HttpSecurity   http)throws Exception{
    http
    .authorizeRequests().
    /*antMatchers("/**").*/
    antMatchers(PUBLIC_MATCHES).
    permitAll().anyRequest().authenticated();

http
    .csrf().disable().cors().disable()
    .formLogin().failureUrl("/login?error")
    .defaultSuccessUrl("/")
    .successForwardUrl("/login")
    .and()
    .logout().logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
    .logoutSuccessUrl("/?logout").deleteCookies("remember-me").permitAll()
    .and()
    .rememberMe();

}
@Autowired
public void configureGlobal (AuthenticationManagerBuilder auth) throws Exception{
    auth.userDetailsService(usersecurityservice).passwordEncoder(passwordencoder());
}

} userSecurity类是:

代码语言:javascript
运行
复制
@Service
public class UserSecurityService implements UserDetailsService {

    @Autowired()
    private UserRepository userRepository;

public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
    // TODO Auto-generated method stub
    try{

    }catch(Exception ex){
        System.out.println("Error acoured hear:");
    }
    User user=userRepository.findByUsername(username);
    if(null==user){
        throw new UsernameNotFoundException("Username not found");
    }
    return user;
}

当我删除'@EnableGlobalMethodSecurity‘注释程序正确运行时,我以前使用过这个cod,它正常工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-13 17:30:30

你最近更新春天了吗?在以前的版本中,有一个空MethodSecurityMetadataSource是可以的,但是现在他们添加了这张支票,如果您没有启用至少一个方法安全元数据源,它们会抛出您正在获得的异常(“在所有全局方法配置的组合中,实际上没有激活任何注释支持”)。这发生在我从5.0.7到5.1.5春季更新的时候。下面是讨论此更改的问题所在

要修复它,要么在@EnableGlobalMethodSecurity注释属性中启用一个元数据源,要么像我一样使用某种GlobalMethodSecurityConfiguration,确保方法customMethodSecurityMetadataSource返回null。

票数 5
EN

Stack Overflow用户

发布于 2020-07-10 00:27:36

您有此问题,因为您没有正确的注释。您应该这样添加它:@EnableGlobalMethodSecurity(prePostEnabled = true)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55549415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档