import javax.ws.rs.*; import javax.ws.rs.core.*; import org.osgi.service.component.annotations.*; @Component(service = HelloResource.class) @Path("/hello") public class HelloResource { @GET @Produces(MediaType.TEXT_PLAIN) public String hello() { return "Hello, world!"; } } <dependencies> <dependency> <groupId>org.osgi</groupId> <artifactId>osgi.core</artifactId> <version>7.0.1</version> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.scr.annotations</artifactId> <version>1.14.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.scr.ds-annotations</artifactId> <version>1.2.14</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.ws.rs</groupId> <artifactId>javax.ws.rs-api</artifactId> <version>2.1.1</version> </dependency> </dependencies> Bundle-SymbolicName: com.example.hello Bundle-Activator: com.example.hello.Activator Import-Package: javax.ws.rs;version="[2.1,3)" Require-Capability: osgi.extender;filter:="(&(osgi.extender=osgi.rest)(version>=1.0.0)(!(version>=2.0.0)))" import org.osgi.framework.*; import org.osgi.service.component.annotations.*; @Component public class Activator implements BundleActivator { private ServiceRegistration<?> registration; public void start(BundleContext bundleContext) { registration = bundleContext.registerService(Application.class, new HelloApplication(), null); } public void stop(BundleContext bundleContext) { registration.unregister(); } } import javax.ws.rs.core.*; import java.util.*; public class HelloApplication extends Application { public Set<Class<?>> getClasses() { Set<Class<?>> classes = new HashSet<>(); classes.add(HelloResource.class); return classes; } }


上一篇:
下一篇:
切换中文