我正在使用JBoss AS 7.1并利用上下文和依赖注入。这里没有春天。
我的问题是如何将依赖项注入hazelcast MapStore实现?可能有程序化的方式吗?任何帮助表示赞赏。
例如
public class ClientRepositoryCache implements MapStore<Integer, ClientItem> {
@Inject
ClientRepository repository;
@Override
public ClientItem load(Integer clientNumber) {
return repository.getClientById(clientNumber);
}
}
答案 0 :(得分:1)
目前Hazelcast仅使用Spring支持依赖注入。相反,您可以使用MapStoreFactory
来创建自己的MapStore实例。
查看相关的Hazelcast小组帖子;
<强> MapStore/MapLoader configuration 强>
... 例如,要与Guice集成,您可以提供单个MapStoreFactory实现的名称,该实现静态注入了足够的信息,以使用Injector-aware逻辑实现newMapStore(String name,Properties属性)。
如果您像我一样使用编程配置,则可以通过将已注入的工厂传递给MapStoreConfig.setFactoryImplementation来避免静态注入。
-Tim Peierls -
另请参阅MapStoreFactory和MapStoreConfig javadocs。
答案 1 :(得分:0)
https://github.com/hazelcast/hazelcast/issues/440
这非常有效!使用CDI扩展与CDI集成。