CXF:以编程方式向服务器添加新服务

时间:2017-06-21 13:26:42

标签: jax-rs cxf

我想将新资源添加到已在CXF中运行的服务器。我正在使用The CXF documentation中的示例来配置没有弹簧或任何其他外部添加的服务。

我会将代码粘贴到此处以供将来参考:

JAXRSServerFactoryBean sf = new 
JAXRSServerFactoryBean();
sf.setResourceClasses(CustomerService.class);
sf.setResourceProvider(CustomerService.class, new SingletonResourceProvider(new 
CustomerService()));
sf.setAddress("http://localhost:9000/");
BindingFactoryManager manager = 
sf.getBus().getExtension(BindingFactoryManager.class);
JAXRSBindingFactory factory = new JAXRSBindingFactory();
factory.setBus(sf.getBus());
manager.registerBindingFactory(JAXRSBindingFactory.JAXRS_BINDING_ID, factory);
Server server = sf.create();

现在我想向我刚创建的服务器添加第二项服务。我目前的策略是停止服务器并使用第二个类重建它,但这意味着当我添加新服务时服务器已关闭。

有没有办法直接向现有服务器添加新服务,而无需重建整个服务?

0 个答案:

没有答案