【问题标题】:Specifying Shiro's LifecycleBeanPostProcessor in programmatic Spring @Configuration causes errors在编程 Spring @Configuration 中指定 Shiro 的 LifecycleBeanPostProcessor 会导致错误
【发布时间】:2013-03-10 11:43:01
【问题描述】:

我有一个正在以编程方式配置的 Spring Web 应用程序。我正在尝试将 Apache Shiro 作为我的身份验证框架,并且遇到了将 Shiro 与 Spring 集成的问题,特别是使用编程配置(因为我决定不想编写大量 XML)。这是相关的代码sn -p:

@Configuration //Replaces Spring XML configuration
@EnableTransactionManagement //Enables declarative Transaction annotations
public class SpringAppConfig {
    @Bean
    public LifecycleBeanPostProcessor lifecycleBeanPostProcessor() {
        return new LifecycleBeanPostProcessor();
    }
}

当我启动我的 web 应用程序时,我收到了 Spring 无法使用注释处理我的任何 bean 的错误。

【问题讨论】:

    标签: spring shiro


    【解决方案1】:

    根据本期的cmets:https://issues.apache.org/jira/browse/SHIRO-222

    我应该将该方法声明为 static 以避免早期创建配置 bean(实际上我还不太确定 Spring 配置机制是如何工作的,这可能是我遇到此错误的原因)。

    @Bean
    public static LifecycleBeanPostProcessor lifecycleBeanPostProcessor() {
        return new LifecycleBeanPostProcessor();
    }
    

    这可以防止所有错误发生。

    【讨论】:

      猜你喜欢
      • 2013-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多