【发布时间】:2016-01-29 13:12:59
【问题描述】:
我在我的 Jersey 应用程序中使用 HK2。要绑定类,我使用的是 inhabitant generator maven 插件。
对于我的一个类,我需要使用工厂来生成实例。在我的应用程序类中绑定工厂按预期工作:
register(new AbstractBinder() {
@Override
protected void configure() {
bindFactory(ClientManagerFactory.class).to(ClientManager.class);
}
});
问题是我的居民文件在我注册抽象活页夹后就被忽略了。
如何通过注解绑定工厂(完全不使用编程绑定器?
如果 HK2 无法做到这一点:如何将AbstractBinder 用于需要工厂的类,并为所有其他类使用居民文件?
更新: 我的工厂是这样的:
public class ClientManagerFactory implements Factory<ClientManager> {
@Override
public ClientManager provide() {
return ClientManager.fromSettings();
}
@Override
public void dispose(ClientManager instance) {
instance.cleanupResources();
}
}
【问题讨论】:
-
如果没有工厂,您目前如何让从居民文件创建的 ServiceLocator 与 Jersey 一起工作?
-
我也想看看你的工厂代码,特别是你在提供方法上放了什么注释。我们有很多测试表明工厂可以与 hk2-inhabitant-generator 一起使用
-
@jwells131313 我在原始帖子中添加了工厂代码。我没有任何注释 - 我必须添加任何注释吗?
标签: java maven glassfish jersey-2.0 hk2