Is it possible to generate webservices client code for a special package using apache cxf in maven?

I am trying to create a webservices client as soon as I create my project on the fly. He currently does this, but puts it in a package with a name based on the WS namespace .. so he suggests that the namespace is google.com, the generated files will 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 files in another package. Lets call him comWS.gooleClient

Can this be done?

thank

+5
source share
3 answers

-p, :

<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>
+8

,

<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>
+6

Have you tried 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>
+1
source

All Articles