Hi Sergey Should i download something manually for the 3.1.14-SNAPSHOT version (and if so how and from where)? Because i'm trying to do it thru the maven build (defining the version of the artifact as 3.1.14-SNAPSHOT) and it does not download this version.
And it comes with the below error (of course) : Plugin org.apache.cxf:cxf-java2wadl-plugin:3.1.14-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.cxf:cxf-java2wadl- plugin:jar:3.1.14-SNAPSHOT: Could not find artifact org.apache.cxf:cxf-java2wadl-plugin:pom:3.1.14-SNAPSHOT in Thanks, Eyal -----Original Message----- From: Sergey Beryozkin [mailto:sberyoz...@gmail.com] Sent: 19 October, 2017 17:01 To: Eyal Weingart <eyal.weing...@exlibrisgroup.com>; users <users@cxf.apache.org> Subject: Re: cxf-java2wadl-plugin java2wadl questions Np, by the way, the custom provider will need to have a constructor accepting 'Bus' which it can provide to the super... Sergey On 19/10/17 14:06, Eyal Weingart wrote: > Thanks a lot! > I will check this on Sunday (leaving for the weekend) and will let you > know Working currently with version 3.1.4 and not 3.1.14 so will need to fix > some dependencies so my build will not fail... > > Thanks, > Eyal > > > -----Original Message----- > From: Sergey Beryozkin [mailto:sberyoz...@gmail.com] > Sent: 19 October, 2017 15:20 > To: Eyal Weingart <eyal.weing...@exlibrisgroup.com>; users > <users@cxf.apache.org> > Subject: Re: cxf-java2wadl-plugin java2wadl questions > > Hi Eyal > On 19/10/17 09:47, Eyal Weingart wrote: >> Hi Sergey >> >> 1. Do you see a future option to custom the WADL generator class >> during the maven build? If so, what is a reasonable timeline for this? >> (Just to know how to plan ahead) >> > I've added a 'customWadlGenerator' parameter, give 3.1.14-SNAPSHOT or > 3.2.1-SNAPSHOT a try >> 2. Regarding the "classResourceNames" and multiple WADL files question, i >> think i was misunderstood, it is not that each rest class holds 1 service, i >> meant that each rest class holds >> 1 business with few operations. >> For example, 1 class holds books operations, another class holds >> teachers operations and another class will hold course operations - so our >> expectation is that we should have >> 3 separate WADLs generated - what do you think? >> > That is fine, it is just that it can't be really solved at the > WADLGenerator level - in your case the separation may be clean, in > other cases - may be not. And from the practical point of view it will > push the already very complex WADLGenerator code to the limit if we > started trying updating it to push the info to many files > > Thanks, Sergey >> >> Thanks, >> Eyal >> >> >> -----Original Message----- >> From: Eyal Weingart >> Sent: 18 October, 2017 13:47 >> To: Sergey Beryozkin <sberyoz...@gmail.com>; users >> <users@cxf.apache.org> >> Subject: RE: cxf-java2wadl-plugin java2wadl questions >> >> Well, actually i was referring to applicative error codes (and their >> descriptions) - that might be useful by users so can they understand >> the exact issue >> >> >> Thanks, >> Eyal >> >> >> -----Original Message----- >> From: Sergey Beryozkin [mailto:sberyoz...@gmail.com] >> Sent: 18 October, 2017 12:44 >> To: Eyal Weingart <eyal.weing...@exlibrisgroup.com>; users >> <users@cxf.apache.org> >> Subject: Re: cxf-java2wadl-plugin java2wadl questions >> >> That said, while customizing a response serialization in order to show the >> extra statuses can help users see them, one can document it as well. >> >> For example, I do not see how the information that a given response can >> return 405 can be practically used. Well, one can type for example a 405 >> catch block on the client knowing 405 can be returned, but I'm not sure what >> difference it makes, where this 405 info is located in the response statuses >> or in the docs... >> >> Cheers, Sergey >> On 18/10/17 10:37, Sergey Beryozkin wrote: >>> I forgot it's really about using a Maven plugin. >>> Hmm...I guess we may need to support a custom class... >>> >>> Sergey >>> On 18/10/17 07:06, Eyal Weingart wrote: >>>> Thanks again. >>>> Regarding: "Create MyWadlGenerator extending WADLGenerator, >>>> override whatever is needed, and register MyWadlGenerator as a >>>> jaxrs:provider" >>>> Where exactly do i need to register the MyWadlGenerator as a >>>> jaxrs:provider? I saw it can be done in a spring file that serves >>>> cases for WADL Auto Generation at Runtime. >>>> But where/how should i do it in the pom.xml for the >>>> cxf-java2wadl-plugin in order for it to be activated during build >>>> time >>>> >>>> >>>> Thanks, >>>> Eyal >>>> >>>> >>>> -----Original Message----- >>>> From: Sergey Beryozkin [mailto:sberyoz...@gmail.com] >>>> Sent: 17 October, 2017 17:48 >>>> To: Eyal Weingart <eyal.weing...@exlibrisgroup.com>; users >>>> <users@cxf.apache.org> >>>> Subject: Re: cxf-java2wadl-plugin java2wadl questions >>>> >>>> Hi, >>>> On 17/10/17 15:28, Eyal Weingart wrote: >>>>> Thanks Sergey for the quick response. >>>>> >>>>> 1. Regarding the customization option, one example i can think of >>>>> (and it relates to issue#2 below) is that we want to use multiple >>>>> DocTarget.RESPONSE in order to display multiple error codes and >>>>> since the generic code does not support it then this logic could >>>>> have been applied in the customization class. >>>>> >>>> Well, there are so many possible customization points that one can >>>> think of, some parts like the docs can be easier customized than >>>> others, but FYI, nearly all of if not all of methods in >>>> WADLGenerator are protected. >>>> Create MyWadlGenerator extending WADLGenerator, override whatever >>>> is needed, and register MyWadlGenerator as a jaxrs:provider >>>> >>>>> 3. Sorry, but did not understand the answer regarding generating 1 >>>>> WADL per 1 Rest API class. >>>>> Each Rest API class is a different service so don't you >>>>> think it should have the option to have its own WADL file? >>>>> >>>> It depends. They can be part of the composite service, and quite >>>> often, they can share the same (XML) schema types. It's not >>>> something WADLGenerator should be concerned about, trying to push >>>> each service docs into a separate file, and thinking of how to >>>> avoid the schema duplication. >>>> >>>> If, in your case, each class does indeed represent a standalone >>>> service, then IMHO it would be better to create N jaxrs:endpoints, >>>> one per each class, as opposed to having 1 endpoint with N classes >>>> >>>> Sergey >>>> >>>>> >>>>> Thanks, >>>>> Eyal >>>>> >>>>> -----Original Message----- >>>>> From: Sergey Beryozkin [mailto:sberyoz...@gmail.com] >>>>> Sent: 17 October, 2017 00:06 >>>>> To: users <users@cxf.apache.org> >>>>> Cc: Eyal Weingart <eyal.weing...@exlibrisgroup.com> >>>>> Subject: Re: cxf-java2wadl-plugin java2wadl questions >>>>> >>>>> Hi >>>>> On 16/10/17 12:35, Eyal Weingart wrote: >>>>>> Hi, >>>>>> >>>>>> >>>>>> >>>>>> Not sure to whom i need to send my Questions so hopefully one of >>>>>> you can help me. >>>>>> >>>>> Forwarding to the CXF users list >>>>> >>>>>> I want to use the maven plugin cxf-java2wadl-plugin in order to >>>>>> generate WADL from Java rest APIs in build time but i found few >>>>>> issues with that: >>>>>> >>>>>> >>>>>> >>>>>> 1. Is there a way to custom the generator class so i can >>>>>> apply some business code during the build? (is it the >>>>>> org.apache.cxf.jaxrs.model.wadl.WadlGenerator that generates it?) >>>>> >>>>> What do you need to customize in the generated WADL ? >>>>> >>>>>> >>>>>> >>>>>> 2. When i use multiple DocTarget.RESPONSE in the rest API >>>>>> annotations then it generates only the first one it finds >>>>>> >>>>> Right, because WADLGenerator only creates a single wadl:response >>>>> per a given operation >>>>>> >>>>>> 3. If i define more than 1 classResourceNames in the >>>>>> configuration in the pom.xml then it generates all services under >>>>>> 1 application.wadl file so if i want 1 WADL file per 1 rest API >>>>>> class then i need to define multiple <execution> (1 execution per >>>>>> 1 Rest >>>>>> class) - is there a nicer way of doing it? >>>>>> >>>>> There's no way to auto-gen 1 wadl per 1 class resource - it would >>>>> be hard to achieve because most likely these class resources will >>>>> share the schema >>>>> >>>>> Sergey >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> Example of how i configured it in the pom.xml: >>>>>> >>>>>> <plugin> >>>>>> >>>>>> <groupId>org.apache.cxf</groupId> >>>>>> >>>>>> <artifactId>cxf-java2wadl-plugin</artifactId> >>>>>> >>>>>> <version>3.1.4</version> >>>>>> >>>>>> <executions> >>>>>> >>>>>> <execution> >>>>>> >>>>>> <id>process-classes1</id> >>>>>> >>>>>> <phase>process-classes</phase> >>>>>> >>>>>> <goals> >>>>>> >>>>>> <goal>java2wadl</goal> >>>>>> >>>>>> </goals> >>>>>> >>>>>> >>>>>> <configuration> >>>>>> >>>>>> <classResourceNames> >>>>>> >>>>>> <classResourceName>com.exlibris.primo.webservices.rest.EShelfRest >>>>>> A >>>>>> p >>>>>> i< >>>>>> / >>>>>> classResourceName> >>>>>> >>>>>> </classResourceNames> >>>>>> >>>>>> <applicationTitle>Primo</applicationTitle> >>>>>> >>>>>> <attachWadl>true</attachWadl> >>>>>> >>>>>> </configuration> >>>>>> >>>>>> </execution> >>>>>> >>>>>> </executions> >>>>>> >>>>>> </plugin> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> Thanks in advance >>>>>> >>>>>> Eyal >>>>>> >>>>> >>>>> >>>>> -- >>>>> Sergey Beryozkin >>>>> >>>>> Talend Community Coders >>>>> http://coders.talend.com/ >>>>> -- Sergey Beryozkin Talend Community Coders http://coders.talend.com/