Now it seems to work correctly! Thanks a lot :) -----Original Message----- From: Sergey Beryozkin [mailto:[email protected]] Sent: Friday, June 12, 2015 3:12 PM To: [email protected] Subject: Re: Method javadocs are missed in WADL when JDK8 is used
Right, this is the latest update: http://git-wip-us.apache.org/repos/asf/cxf/commit/734498e6 As I said, scraping the generated HTML is not the most robust way to extract JavaDocs but I'm getting positive enough about keeping this feature maintained as it is obvious a number of users may be interested. If it is still does not work: can you please consider providing a patch ? Sergey On 11/06/15 21:13, Sergey Beryozkin wrote: > Indeed the test class has only 2 methods, with 0 and 2 parameters. And > it just worked after the latest tweak but it is obvious the existing > tests do not have enough coverage... > > Sergey > > > On 11/06/15 17:46, Anastasiia Iurshina wrote: >> This time it works but only for the methods with 0 parameters or with >> 2 parameters. >> String[] opBits length is always 2 for methods with any number of >> parameters. >> >> -----Original Message----- >> From: Sergey Beryozkin [mailto:[email protected]] >> Sent: Thursday, June 11, 2015 6:37 PM >> To: [email protected] >> Subject: Re: Method javadocs are missed in WADL when JDK8 is used >> >> Hope this time it will work better: >> >> http://git-wip-us.apache.org/repos/asf/cxf/commit/5f5f3748 >> >> Sergey >> On 10/06/15 14:46, Sergey Beryozkin wrote: >>> Indeed, I got it now :-) >>> >>> Sergey >>> On 10/06/15 14:36, Anastasiia Iurshina wrote: >>>> As it is it doesn't work for any methods. But if the operation >>>> marker ends are changed from "--" to "-", it will work for the >>>> methods without parameters and for the methods with only one parameter. >>>> Thanks. >>>> >>>> -----Original Message----- >>>> From: Sergey Beryozkin [mailto:[email protected]] >>>> Sent: Wednesday, June 10, 2015 4:25 PM >>>> To: [email protected] >>>> Subject: Re: Method javadocs are missed in WADL when JDK8 is used >>>> >>>> Hi >>>> >>>> I'm presuming the updated code works for methods with no parameters >>>> only ? >>>> I'll pay a closer attention to getting the method names with >>>> parameters extracted, Cheers, Sergey >>>> >>>> On 10/06/15 13:59, Anastasiia Iurshina wrote: >>>>> Thanks for the fast reaction :) >>>>> >>>>> I think I didn't describe the problem well... It still doesn't work. >>>>> It's not that brackets have been replaced with hyphens. The format >>>>> has been changed a bit more: >>>>> >>>>> Java8: >>>>> <a name="replaceFirst-java.lang.String-java.lang.String-"> >>>>> <a name="toLowerCase--"> >>>>> >>>>> Java7: >>>>> <a name="replaceFirst(java.lang.String, java.lang.String)"> <a >>>>> name="toLowerCase()"> >>>>> >>>>> So in Java 8 the list of parameter types starts with a hyphen, >>>>> ends with a hyphen, and the types are separated by hyphens. >>>>> >>>>> -----Original Message----- >>>>> From: Sergey Beryozkin [mailto:[email protected]] >>>>> Sent: Tuesday, June 09, 2015 2:35 PM >>>>> To: [email protected] >>>>> Subject: Re: Method javadocs are missed in WADL when JDK8 is used >>>>> >>>>> Hi >>>>> >>>>> I've just fixed for 3.0.6-SNAPSHOT: >>>>> >>>>> https://issues.apache.org/jira/browse/CXF-6446 >>>>> >>>>> Have a look please if it does work for you >>>>> >>>>> Cheers, Sergey >>>>> On 08/06/15 11:20, Sergey Beryozkin wrote: >>>>>> Hi >>>>>> >>>>>> Thanks for reporting this issue, I'll take care of it in time for >>>>>> the next release. >>>>>> >>>>>> FYI, it is also possible to prepare a WADL document at the build >>>>>> time and there one can depend on the actual on the more robust >>>>>> JavaDoc API to get the doc collected: >>>>>> >>>>>> http://cxf.apache.org/docs/jaxrs-services-description.html#JAXRSS >>>>>> er >>>>>> vi >>>>>> c >>>>>> esDescription-java2wadlMavenplugin >>>>>> >>>>>> >>>>>> This document can then be referenced from a jaxrs:server element. >>>>>> >>>>>> Thanks, Sergey >>>>>> >>>>>> >>>>>> >>>>>> On 08/06/15 10:32, Anastasiia Iurshina wrote: >>>>>>> Hello, >>>>>>> >>>>>>> We're currently using CXF 3.0.4 and it seems there is a bug in >>>>>>> generating WADL when JDK 8 is used: method javadocs are not >>>>>>> being added to WADL. >>>>>>> It happens because Javadoc format has been changed in Java 8. >>>>>>> Now in Javadoc HTML files methods look like < a >>>>>>> name="getCountries--"> instead of < a name="getCountries( in the older >>>>>>> versions. >>>>>>> >>>>>>> JavaDocProvider expects the older format: String operMarker = >>>>>>> operLink + method.getName() + "("; so it's not able to find >>>>>>> operation marker. >>>>>>> >>>>>>> >>>>>>> >>>>>>> There is also a minor problem with namespaces. If all >>>>>>> request/response types in endpoints are collections the >>>>>>> namespace is not being added to the <application tag, which >>>>>>> result in the invalid WADL. >>>>>>> >>>>>>> Classes of the objects that are elements of the collections are >>>>>>> not added to the Map<Class<?>, QName> clsMap = new >>>>>>> IdentityHashMap<Class<?>, QName>(); in WadlGenerator. >>>>>>> >>>>>>> (and it seems right) so the namespace is missed. Maybe it's the >>>>>>> expected behavior but it seems a bit inconsistent since >>>>>>> collections are supported as request/response types. >>>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Anastasiia >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Sergey Beryozkin >>>>> >>>>> Talend Community Coders >>>>> http://coders.talend.com/ >>>>> >>>>> Blog: http://sberyozkin.blogspot.com >>>>> >>>> >>> >> >> >> -- >> Sergey Beryozkin >> >> Talend Community Coders >> http://coders.talend.com/ >> >> Blog: http://sberyozkin.blogspot.com >> >
