I have a collection of OSGi DS services. Each one calls the method below, because I'm too timid to try out DOSGi yet.
The wadl shows all the services, but when I try to talk to one, I fail. Log says: karaf@root>2015-11-17 14:18:05,009 | WARN | tp1908774823-159 | JAXRSInInterceptor | 67 - org.apache.cxf.cxf-rt-frontend-jaxrs - 3.1.2 | No root resource matching request path /cxf/rosette/ping has been found, Relative Path: /. Please enable FINE/TRACE log level for more details. Here's the WASL for that one: <application xmlns="http://wadl.dev.java.net/2009/02" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <grammars/> <resources base="http://localhost:8180/cxf/rosette/ping"> <resource path="/ping"> <method name="GET"> <doc>Ping the service</doc> <response> <doc>Reply to the ping</doc> <representation mediaType="application/json"> <doc>Reply to the ping</doc> </representation> </response> </method> </resource> </resources> </application> protected void startService(String resourcePath, ComponentContext context) { JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean(); sf.setProvider(new JacksonJaxbJsonProvider(JsonUtils.getObjectMapper(), JacksonJaxbJsonProvider.DEFAULT_ANNOTATIONS)); sf.setProvider(new JsonExceptionMapper()); sf.setProvider(new WebApplicationExceptionMapper()); sf.setProvider(new GenericExceptionMapper()); sf.setServiceBeans(Collections.singletonList(this)); sf.setAddress("/rosette" + resourcePath); server = sf.create(); }
