在Spring Boot整合shiro中,启动程序出现了下面的错误:
***************************
APPLICATION FAILED TO START
***************************
Description:
Method filterShiroFilterRegistrationBean in org.apache.shiro.spring.config.web.autoconfigure.ShiroWebFilterConfiguration required a bean named 'shiroFilterFactoryBean' that could not be found.
Action:
Consider defining a bean named 'shiroFilterFactoryBean' in your configuration.
原因: 未指定bean的名称,默认采用的是 “方法名” + "首字母小写"的配置方式
解决方法:
- 在生产
shiroFilterFactoryBean
的方法上指定Bean
名称
@Bean(name = "shiroFilterFactoryBean")
public ShiroFilterFactoryBean xxx(SecurityManager securityManager) {
...
}
- 在生产
shiroFilterFactoryBean
的方法上修改方法名字为shiroFilterFactoryBean
@Bean
public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {
...
}