meanwhile I am pursuing to distribute my enunciate doc instead.. Using httpservice..
On Fri, Apr 7, 2017 at 7:53 AM, nino martinez wael < [email protected]> wrote: > Christian, I have cloned dosgi, and added swagger to the jackson example > > https://github.com/nmwael/cxf-dosgi > https://github.com/nmwael/cxf-dosgi/tree/master/samples/rest/impl-jackson > > > On Thu, Apr 6, 2017 at 4:46 PM, Sergey Beryozkin <[email protected]> > wrote: > >> I know disabling a scan did help some of my colleagues to make it work >> OSGI... >> >> Sergey >> >> On 06/04/17 15:44, Sergey Beryozkin wrote: >> >>> Hi, to be honest, I do not know if it is expected to work with DOSGi2, >>> have a look please at the 'plain' Swagger2 OSGI demo, and debug what >>> Swagger2featire does in that demo, and I guess then compare to what is >>> happening with DOSGI, I think it needs to be at least CXF 3.1.10 >>> >>> Cheers, Sergey >>> On 06/04/17 15:05, nino martinez wael wrote: >>> >>>> I will look into making a test project. >>>> >>>> On Thu, Apr 6, 2017 at 4:05 PM, nino martinez wael < >>>> [email protected]> wrote: >>>> >>>> Nope did not fix it.. setScan(false) did not help.. And wondering why >>>>> swagger are not complaining, I have manually referred to the package >>>>> for it >>>>> to look. >>>>> >>>>> On Thu, Apr 6, 2017 at 3:40 PM, nino martinez wael < >>>>> [email protected]> wrote: >>>>> >>>>> Let me just check.. I think I am using the wrong version of swagger..I >>>>>> did a manual feature, for karaf... this feature should be used : >>>>>> cxf-rs-description-swagger2 >>>>>> >>>>>> Let me just verify.. >>>>>> >>>>>> On Thu, Apr 6, 2017 at 3:34 PM, Sergey Beryozkin < >>>>>> [email protected]> >>>>>> wrote: >>>>>> >>>>>> Yes, sometimes setScan(false) helps >>>>>>> >>>>>>> Sergey >>>>>>> >>>>>>> On 06/04/17 14:32, Christian Schneider wrote: >>>>>>> >>>>>>> I am not very familiar with how Swagger works. Are you sure the scan >>>>>>>> works like this in OSGi? >>>>>>>> >>>>>>>> Can you maybe put your test project into a github repo ? I am >>>>>>>> willing to >>>>>>>> invest a bit of time to help make this work as I think swagger >>>>>>>> would be >>>>>>>> a great feature for remote services. >>>>>>>> >>>>>>>> Christian >>>>>>>> >>>>>>>> On 06.04.2017 15:12, nino martinez wael wrote: >>>>>>>> >>>>>>>> I've fiddled a lot, nothing seems to work in order to make swagger >>>>>>>>> aware of >>>>>>>>> my endpoint.. However I have swagger ui running (although since >>>>>>>>> swagger >>>>>>>>> cannot see my endpoints, it's somewhat empty)... >>>>>>>>> >>>>>>>>> RSA does pickup the swagger intent, and all are "working" except it >>>>>>>>> does >>>>>>>>> not see my endpoints. I get both swagger json and yaml. >>>>>>>>> >>>>>>>>> @Component // >>>>>>>>> ( >>>>>>>>> property = >>>>>>>>> "org.apache.cxf.dosgi.IntentName=swagger" >>>>>>>>> // >>>>>>>>> ) >>>>>>>>> public class SwaggerIntent implements Callable<List<Object>> { >>>>>>>>> >>>>>>>>> private String version = ""; >>>>>>>>> private String name = ""; >>>>>>>>> >>>>>>>>> @Activate >>>>>>>>> public void activate(BundleContext bundleContext) { >>>>>>>>> Dictionary<String, String> headers = >>>>>>>>> bundleContext.getBundle().getHeaders(); >>>>>>>>> version = headers.get("Bundle-Version"); >>>>>>>>> name = headers.get("Bundle-Name"); >>>>>>>>> >>>>>>>>> >>>>>>>>> } >>>>>>>>> >>>>>>>>> >>>>>>>>> @Override >>>>>>>>> public List<Object> call() throws Exception { >>>>>>>>> Swagger2Feature swagger2Feature = new Swagger2Feature(); >>>>>>>>> swagger2Feature.setBasePath("/cxf/dialer/v1/"); >>>>>>>>> swagger2Feature.setTitle(name); >>>>>>>>> swagger2Feature.setDescription(name); >>>>>>>>> swagger2Feature.setLicense("Commercial"); >>>>>>>>> swagger2Feature.setSupportSwaggerUi(true); >>>>>>>>> swagger2Feature.setContact("development@"); >>>>>>>>> swagger2Feature.setScan(true); >>>>>>>>> swagger2Feature.setScanAllResources(true); >>>>>>>>> swagger2Feature.setUsePathBasedConfig(true); >>>>>>>>> >>>>>>>>> >>>>>>>>> swagger2Feature.setPrettyPrint(true); >>>>>>>>> swagger2Feature.setVersion(version); >>>>>>>>> >>>>>>>>> return Arrays.asList((swagger2Feature)); >>>>>>>>> } >>>>>>>>> >>>>>>>>> } >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> Thanks for the mention about logger interceptors. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thu, Apr 6, 2017 at 1:50 PM, Christian Schneider >>>>>>>>> <[email protected] >>>>>>>>> >>>>>>>>> wrote: >>>>>>>>>> How do you export the swagger intent? >>>>>>>>>> >>>>>>>>>> Btw. The interceptors property will not work but you can add the >>>>>>>>>> logging >>>>>>>>>> Feature to the swagger intent service. >>>>>>>>>> >>>>>>>>>> Christian >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 06.04.2017 12:45, nino martinez wael wrote: >>>>>>>>>> >>>>>>>>>> Im having issue getting swagger to pickup my jaxrs endpoints... >>>>>>>>>> CXF >>>>>>>>>> >>>>>>>>>>> picks >>>>>>>>>>> them up.. >>>>>>>>>>> >>>>>>>>>>> here a short sample: >>>>>>>>>>> >>>>>>>>>>> @Path("/") >>>>>>>>>>> @Produces({MediaType.APPLICATION_JSON, >>>>>>>>>>> MediaType.APPLICATION_XML}) >>>>>>>>>>> @Component(immediate = true, name = "SimpleEndPointsImpl", // >>>>>>>>>>> property >>>>>>>>>>> = // >>>>>>>>>>> { // >>>>>>>>>>> "service.exported.intents=swagger", >>>>>>>>>>> "service.exported.interfaces=*", >>>>>>>>>>> "service.exported.configs=org. >>>>>>>>>>> apache.cxf.rs", >>>>>>>>>>> "org.apache.cxf.rs.address=/di >>>>>>>>>>> aler/v1/", >>>>>>>>>>> >>>>>>>>>>> "org.apache.cxf.rs.in.interceptors=org.apache.cxf.intercepto >>>>>>>>>>> r.LoggingInInterceptor", >>>>>>>>>>> >>>>>>>>>>> "org.apache.cxf.rs.in.interceptors=org.apache.cxf.intercepto >>>>>>>>>>> r.LoggingOutInterceptor" >>>>>>>>>>> }) >>>>>>>>>>> public class SimpleEndPointsImpl implements SimpleEndPoints { >>>>>>>>>>> >>>>>>>>>>> private BusinessService businessService; >>>>>>>>>>> private static org.slf4j.Logger logger = >>>>>>>>>>> LoggerFactory.getLogger(BackendDaoServiceUtil.class); >>>>>>>>>>> >>>>>>>>>>> /** >>>>>>>>>>> * @return Gives a full list of campaigns in the system >>>>>>>>>>> */ >>>>>>>>>>> @Path("/fullcampaigns") >>>>>>>>>>> @GET >>>>>>>>>>> @Produces({MediaType.APPLICATION_JSON, >>>>>>>>>>> MediaType.APPLICATION_XML}) >>>>>>>>>>> @Override >>>>>>>>>>> public List<FullCampaign> getAllCampaignsStatus() throws >>>>>>>>>>> CiscoAPIException, FailedSecurityException { >>>>>>>>>>> return businessService.getFullCampaigns(); >>>>>>>>>>> } >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Thu, Apr 6, 2017 at 9:54 AM, nino martinez wael < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>> I will test it now.. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> On Thu, Apr 6, 2017 at 9:09 AM, Christian Schneider < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>> The Swagger integration provides a feature. So adding this >>>>>>>>>>>> should be >>>>>>>>>>>> >>>>>>>>>>>> quite similar to adding the Jackson provider. >>>>>>>>>>>>> >>>>>>>>>>>>> You create an intent service like this: >>>>>>>>>>>>> https://github.com/apache/cxf-dosgi/blob/master/samples/rest >>>>>>>>>>>>> /impl-jackson/src/main/java/org/apache/cxf/dosgi/samples/res >>>>>>>>>>>>> t/impl/JacksonIntent.java >>>>>>>>>>>>> >>>>>>>>>>>>> and add it to the service: >>>>>>>>>>>>> https://github.com/apache/cxf-dosgi/blob/master/samples/rest >>>>>>>>>>>>> /impl-jackson/src/main/java/org/apache/cxf/dosgi/samples/res >>>>>>>>>>>>> t/impl/TaskResourceImpl.java#L36 >>>>>>>>>>>>> >>>>>>>>>>>>> Can you test this and give Feedback if it works. >>>>>>>>>>>>> >>>>>>>>>>>>> I also thought about supporting the @Features annotation on >>>>>>>>>>>>> DOSGi >>>>>>>>>>>>> service to provide a simple way to add features that do not >>>>>>>>>>>>> need >>>>>>>>>>>>> additional config. >>>>>>>>>>>>> >>>>>>>>>>>>> Christian >>>>>>>>>>>>> >>>>>>>>>>>>> On 06.04.2017 08:04, nino martinez wael wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> Hi Guys >>>>>>>>>>>>> >>>>>>>>>>>>> I've been contemplating on documentation. Currently we've gone >>>>>>>>>>>>>> down the >>>>>>>>>>>>>> offline documentation road, using enunciate[1] while it feels >>>>>>>>>>>>>> okay I've >>>>>>>>>>>>>> seen that CXF supports other directions natively[2]. I am >>>>>>>>>>>>>> wondering if >>>>>>>>>>>>>> its >>>>>>>>>>>>>> possible to use those with DOSGI? >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> [1]http://enunciate.webcohesion.com/ >>>>>>>>>>>>>> [2]http://cxf.apache.org/docs/swagger2feature.html >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> >>>>>>>>>>>>>> Christian Schneider >>>>>>>>>>>>> http://www.liquid-reality.de >>>>>>>>>>>>> >>>>>>>>>>>>> Open Source Architect >>>>>>>>>>>>> http://www.talend.com >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> >>>>>>>>>>>> Best regards / Med venlig hilsen >>>>>>>>>>>> Nino Martinez >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>> >>>>>>>>>> Christian Schneider >>>>>>>>>> http://www.liquid-reality.de >>>>>>>>>> >>>>>>>>>> Open Source Architect >>>>>>>>>> http://www.talend.com >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> Sergey Beryozkin >>>>>>> >>>>>>> Talend Community Coders >>>>>>> http://coders.talend.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Best regards / Med venlig hilsen >>>>>> Nino Martinez >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Best regards / Med venlig hilsen >>>>> Nino Martinez >>>>> >>>>> >>>> >>>> >>>> >>> >>> >> >> -- >> Sergey Beryozkin >> >> Talend Community Coders >> http://coders.talend.com/ >> > > > > -- > Best regards / Med venlig hilsen > Nino Martinez > -- Best regards / Med venlig hilsen Nino Martinez
