Hi Sergey

We've taken 3.1.14-20171106.085950 jars but still failing (see below).
So for the use of "cxf-java2wadl-plugin" I've taken also 
"cxf-rt-rs-service-description" and "cxf-core" with same snapshot releases 
(just to make sure) but did not help.
Ami i missing something?

        [exec] WARNING: Error injecting: 
org.apache.cxf.maven_plugin.javatowadl.Java2WADLMojo
        [exec] java.lang.NoClassDefFoundError: org/apache/cxf/Bus
        [exec]  at java.lang.Class.getDeclaredMethods0(Native Method)
        [exec]  at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
        [exec]  at java.lang.Class.getDeclaredMethods(Class.java:1975)
        [exec]  at 
com.google.inject.spi.InjectionPoint.getInjectionPoints(InjectionPoint.java:664)
        [exec]  at 
com.google.inject.spi.InjectionPoint.forInstanceMethodsAndFields(InjectionPoint.java:358)
        [exec]  at 
com.google.inject.internal.ConstructorBindingImpl.getInternalDependencies(ConstructorBindingImpl.java:155)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getInternalDependencies(InjectorImpl.java:585)
        [exec]  at 
com.google.inject.internal.InjectorImpl.cleanup(InjectorImpl.java:542)
        [exec]  at 
com.google.inject.internal.InjectorImpl.initializeJitBinding(InjectorImpl.java:528)
        [exec]  at 
com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:833)
        [exec]  at 
com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:758)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:255)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:204)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getProviderOrThrow(InjectorImpl.java:954)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:987)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:950)
        [exec]  at 
com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1000)
        [exec]  at 
org.sonatype.guice.bean.reflect.AbstractDeferredClass.get(AbstractDeferredClass.java:45)
        [exec]  at 
com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
        [exec]  at 
com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
        [exec]  at 
com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
        [exec]  at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
        [exec]  at 
org.sonatype.guice.plexus.lifecycles.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:138)
        [exec]  at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:108)
        [exec]  at 
com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
        [exec]  at 
com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
        [exec]  at 
com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
        [exec]  at 
com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
        [exec]  at 
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011)
        [exec]  at 
com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
        [exec]  at com.google.inject.Scopes$1$1.get(Scopes.java:59)
        [exec]  at 
org.sonatype.guice.bean.locators.LazyBeanEntry.getValue(LazyBeanEntry.java:83)
        [exec]  at 
org.sonatype.guice.plexus.locators.LazyPlexusBean.getValue(LazyPlexusBean.java:49)
        [exec]  at 
org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:253)
        [exec]  at 
org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:245)
        [exec]  at 
org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:455)
        [exec]  at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:92)
        [exec]  at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
        [exec]  at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        [exec]  at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        [exec]  at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        [exec]  at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        [exec]  at 
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        [exec]  at 
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        [exec]  at 
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
        [exec]  at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
        [exec]  at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
        [exec]  at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
        [exec]  at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
        [exec]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        [exec]  at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        [exec]  at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        [exec]  at java.lang.reflect.Method.invoke(Method.java:498)
        [exec]  at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
        [exec]  at 
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
        [exec]  at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
        [exec]  at 
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
        [exec] Caused by: java.lang.ClassNotFoundException: org.apache.cxf.Bus
        [exec]  at 
org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
        [exec]  at 
org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
        [exec]  at 
org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)

Thanks, 
Eyal

-----Original Message-----
From: Sergey Beryozkin [mailto:[email protected]] 
Sent: 01 November, 2017 16:58
To: Eyal Weingart <[email protected]>; users 
<[email protected]>
Subject: Re: cxf-java2wadl-plugin java2wadl questions

Hi

You can get it from

https://repository.apache.org/content/groups/snapshots/org/apache/cxf/cxf-java2wadl-plugin/3.1.14-SNAPSHOT/

Sergey
On 01/11/17 14:27, Eyal Weingart wrote:
> Hi Sergey,
> 
> I'm struggling here with downloading it thru the maven build (i was 
> told that in my local environment i'm connecting only to a local maven 
> repository) Is it possible to send me the jar for this snapshot version so we 
> can upload it to our local maven repository and then work with it?
> 
> 
> Thanks,
> Eyal
> 
> 
> -----Original Message-----
> From: Sergey Beryozkin [mailto:[email protected]]
> Sent: 23 October, 2017 12:19
> To: Eyal Weingart <[email protected]>; users 
> <[email protected]>
> Subject: Re: cxf-java2wadl-plugin java2wadl questions
> 
> Hi, I think you'll need to enable the snapshot repositories
> 
> Sergey
> On 22/10/17 09:14, Eyal Weingart wrote:
>> 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:[email protected]]
>> Sent: 19 October, 2017 17:01
>> To: Eyal Weingart <[email protected]>; users 
>> <[email protected]>
>> 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:[email protected]]
>>> Sent: 19 October, 2017 15:20
>>> To: Eyal Weingart <[email protected]>; users 
>>> <[email protected]>
>>> 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 <[email protected]>; users 
>>>> <[email protected]>
>>>> 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:[email protected]]
>>>> Sent: 18 October, 2017 12:44
>>>> To: Eyal Weingart <[email protected]>; users 
>>>> <[email protected]>
>>>> 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:[email protected]]
>>>>>> Sent: 17 October, 2017 17:48
>>>>>> To: Eyal Weingart <[email protected]>; users 
>>>>>> <[email protected]>
>>>>>> 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:[email protected]]
>>>>>>> Sent: 17 October, 2017 00:06
>>>>>>> To: users <[email protected]>
>>>>>>> Cc: Eyal Weingart <[email protected]>
>>>>>>> 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.EShelfRe
>>>>>>>> s
>>>>>>>> t
>>>>>>>> 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/
>>

Reply via email to