Reputation: 1526
I am trying to generate the webservices client once i build my project on the fly .. It currently does so but put it in package named based on the namespace of the WS.. so lets assume the name space is google.com , the generated files would be in com.google ..
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.2.10</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${basedir}/src/main/java/</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>http://localhost:8080/ProjectName/ProjectWS?wsdl</wsdl>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
I want to generate the files to a different package.. lets call it comWS.gooleClient
Is it possible to do that?
Thanks
Upvotes: 5
Views: 4465
Reputation: 415
I am very late though , but this specification worked for me
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.7.7</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${basedir}/src/main/java</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>wsdl-location</wsdl>
<extraargs>
<extraarg>-client</extraarg>
</extraargs>
<packagenames>
<packagename>desired location</packagename>
</packagenames>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
Upvotes: 6
Reputation: 259
Did you try this for extraarg?
<extraarg><!--namespace-->=<!-- new package name--></extraarg>
Example:
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.2.10</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${basedir}/src/main/java/</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>http://localhost:8080/ProjectName/ProjectWS?wsdl</wsdl>
<extraargs>
<extraarg>-p</extraarg>
<extraarg>http://google.com=comWS.gooleClient</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
Upvotes: 1
Reputation: 570545
It is possible using a custom binding or passing the -p
extra argument as shown below:
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.2.10</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${basedir}/src/main/java/</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>http://localhost:8080/ProjectName/ProjectWS?wsdl</wsdl>
<extraargs>
<extraarg>-p</extraarg>
<extraarg>com.something.else</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
Upvotes: 8