我的目标是使用Eclipse创建一个Restful服务Maven项目。然后将其打包为一个捆绑包,并将其部署到Fuse ESB karaf OSGi容器中。到目前为止,我所知道的是如何使用JAX-RS API批注@Path @GET:

package com.restfultest;

import javax.ws.rs.GET;
import javax.ws.rs.Path;

@Path("/example")
public class ExampleService {

@GET
public String sayHello() {
    return "Hello Restful service";
 }
}

我的问题是:
1.我应该使用哪种Maven原型(prototype)? maven-archetype-webapp还是quickstart?

2.如何实现激活器?像这样?
public class Activator implements BundleActivator {

private ServiceRegistration<?> registration;

public void start(BundleContext context) throws Exception {
    // TODO Auto-generated method stub
    ExampleService exampleService = new ExampleService();
    registration = context.registerService( ExampleService.class.getName(), exampleService, null );
}

public void stop(BundleContext context) throws Exception {
    // TODO Auto-generated method stub
    registration.unregister();
}

}

3.如何注册和发布服务(如如何配置端点地址和端口)?

我是osgi的新手。有人可以为我提供一些资源或详细的教程吗?

最佳答案

  • 您可以使用Maven bundle plugin
  • 和3. Apache CXF DOSGi帮助您将OSGi服务发布为WS/REST。
  • 10-06 01:47