0

我想在我的应用程序中实现 spring-context-indexer。我成功生成了 spring.components 文件,但我的应用程序不会部署。我在日志中遇到的错误是:

org.springframework.beans.factory.BeanCreationException:创建类路径资源[application-dwr.xml]中定义的名称为“accountAdminAjaxService”的bean时出错:无法创建类型的内部bean“echosign.web.spring.account.AccountAdminAjaxServiceImpl#61353421” [echosign.web.spring.account.AccountAdminAjaxServiceImpl] 同时设置 bean 属性“目标”;嵌套异常是 org.springframework.beans.factory.BeanCreationException:在类路径资源 [application-dwr.xml] 中定义名称为“echosign.web.spring.account.AccountAdminAjaxServiceImpl#61353421”的 bean 创建错误:无法解析对 bean 的引用userSettings' 同时使用键 [TypedStringValue: value [USER_SETTINGS], target type [null]] 设置 bean 属性 'containerMap';嵌套异常是 org.springframework.beans.factory.BeanCreationException:在类路径资源 [application-dwr.xml] 中创建名称为“userSettings”的 bean 时出错:在设置 bean 属性“accountAdminAjaxService”时无法解析对 bean“accountAdminAjaxService”的引用;嵌套异常是 org.springframework.beans.factory.BeanCurrentlyInCreationException:创建名为“accountAdminAjaxService”的 bean 时出错:org.springframework.beans.factory.FactoryBeanNotInitializedException:无法确定代理错误的目标类 [2022-02-17T08:49:40,676] [EN510650:RMI TCP Connection(2)-127.0.0.1:] [unavailable] (ContextLoader.initWebApplicationContext:313) 上下文初始化失败 [org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为“entityHomeShardCacheInvalidator”的 bean 时出错:依赖不满足通过字段“cacheInvalidationService”表示;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有“com.adobe.sign.crossshardmigration.entities.service.impl.CacheInvalidationService”类型的合格 bean 可用:预计至少有 1 个有资格作为自动装配候选者的 bean。依赖注解:{@org.springframework.beans.factory.annotation.Autowired(required=true)}

所以,我猜有些bean不能使用索引器加载,而不是索引器,它们需要以旧方式加载,通过类路径扫描。

我的问题是:有没有办法让索引器忽略那些特定的 bean,或者将它们设置为通过类路径加载,而其余的 bean 可以用索引器加载?

谢谢!

4

0 回答 0