我做了很多搜索,但是找不到使用Spring托管资源bean的Jersey 2.x junit测试的例子。
以下是我正在尝试的内容,但它无效。 MySpringManagedResource没有没有参数构造函数的错误,这表明它只是忽略了Spring。
public class MyServiceUnitTest extends JerseyTest {
@Override
protected Application configure() {
return new ResourceConfig(MySpringManagedResource.class).
register(org.glassfish.jersey.server.spring.SpringComponentProvider.class).
register(MySpringConfigBean.class);
}
...
}
答案 0 :(得分:0)
谢谢John R.带领我解决问题。如果可以的话,我会把你的标记作为正确的答案。我最终使用了这个:
@Override
protected Application configure() {
ApplicationContext context = new AnnotationConfigApplicationContext(MyConfigClass.class);
MyJerseyResource restResource = context.getBean(MyJerseyResource.class);
return new ResourceConfig().registerInstances(restResource);
}