Hazelcast不注入弹簧依赖关系

问题描述:

我使用hazelcast 3.8.5作为jcache的存储。Hazelcast不注入弹簧依赖关系

看来hazelcast并没有将SpringAware依赖关系注入到CacheLoader中。

我花了偷看AbstractCacheRecordStore,它似乎只喜欢Hazelcast InstanceAware依赖注入,而不是SpringAware +自动装配Autowired

我设置了集群managedContext编程,如: config.setManagedContext(springManagedContext);

更新

我找到的解决方法是将ApplicationContext放入到hazelcast的UserContext中。使CacheLoader实现HazelcastInstanceAware。将环境拉出并完成自动装配CacheLoader。不理想,但它的工作原理。

+0

事实上,这是一个错误,在向各种“Cache”资源注入依赖关系时,不会考虑'@ SpringAware'和'NodeAware'。您可以通过https://github.com/hazelcast/hazelcast/issues/new打开一个问题吗? –

+0

已创建:https://github.com/hazelcast/hazelcast/issues/11384 – Pschmeltz

创建https://github.com/hazelcast/hazelcast/issues/11384 只有解决方法是从hazelcast用户上下文中获取spring应用上下文。

+1

问题在即将发布的3.9版本中得到解决(请参阅https://github.com/hazelcast/hazelcast/pull/11390)。感谢问题报告! –