You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Jose Eduardo Slompo (Updated) (JIRA)" <ji...@apache.org> on 2012/03/26 01:28:28 UTC
[jira] [Updated] (CXF-4202) Maven-codegin-plugin ignores option
"frontend" if there is more than one wsdl file
[ https://issues.apache.org/jira/browse/CXF-4202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jose Eduardo Slompo updated CXF-4202:
-------------------------------------
Description:
If we have more than one WSDL file for the execution of maven-codegen-plugin and we specify the extraargs "frontend" and "jaxws21", only one of the WSDL generates JAXWS21 compliant Java files.
POM.XML:
--------
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.5.2.</version>
<executions>
<execution>
<id>generate-wsdl-stubs</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/src/main/resources/wsdl/ServiceONE.wsdl</wsdl>
<wsdl>${basedir}/src/main/resources/wsdl/ServiceTWO.wsdl</wsdl>
<extraargs>
<extraarg>-frontend</extraarg>
<extraarg>jaxws21</extraarg>
<extraarg>-xjc-Xts</extraarg>
<extraarg>-xjc-Xdv</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.cxf.xjcplugins</groupId>
<artifactId>cxf-xjc-ts</artifactId>
<version>2.5.2</version>
</dependency>
<dependency>
<groupId>org.apache.cxf.xjcplugins</groupId>
<artifactId>cxf-xjc-dv</artifactId>
<version>2.5.2</version>
</dependency>
</dependencies>
</plugin>
--> WSDL "ServiceONE" generates, in its correspondent XXXX_Service.java, the following method calls, JAXWS21 compliant:
public XXXX_Service(URL wsdlLocation) {
super(wsdlLocation, SERVICE);
}
public XXXX_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public XXXX_Service() {
super(WSDL_LOCATION, SERVICE);
}
.........BUT........
--> WSDL "ServiceTWO" generates, in its correspondent XXXX_Service.java, the following method calls, NON-JAXWS21 compliant:
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(WebServiceFeature ... features) {
super(WSDL_LOCATION, SERVICE, features);
}
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(URL wsdlLocation, WebServiceFeature ... features) {
super(wsdlLocation, SERVICE, features);
}
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) {
super(wsdlLocation, serviceName, features);
}
If I use only one WSDL file, everything works fine, but when I use two, the second one doesn't work. I also tried to use to separate executions but had no success.
was:
If we have more than one WSDL file for the execution of maven-codegen-plugin and we specify the extraargs "frontend" and "jaxws21", only one of the WSDL generates JAXWS21 compliant Java files.
POM.XML:
--------
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>2.5.2.</version>
<executions>
<execution>
<id>generate-wsdl-stubs</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/src/main/resources/wsdl/ServiceONE.wsdl</wsdl>
<wsdl>${basedir}/src/main/resources/wsdl/ServiceTWO.wsdl</wsdl>
<extraargs>
<extraarg>-frontend</extraarg>
<extraarg>jaxws21</extraarg>
<extraarg>-xjc-Xts</extraarg>
<extraarg>-xjc-Xdv</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.cxf.xjcplugins</groupId>
<artifactId>cxf-xjc-ts</artifactId>
<version>2.5.2</version>
</dependency>
<dependency>
<groupId>org.apache.cxf.xjcplugins</groupId>
<artifactId>cxf-xjc-dv</artifactId>
<version>2.5.2</version>
</dependency>
</dependencies>
</plugin>
--> WSDL "ServiceONE" generates, in its correspondent XXXX_Service.java, the following method calls, JAXWS21 compliant:
public XXXX_Service(URL wsdlLocation) {
super(wsdlLocation, SERVICE);
}
public XXXX_Service(URL wsdlLocation, QName serviceName) {
super(wsdlLocation, serviceName);
}
public XXXX_Service() {
super(WSDL_LOCATION, SERVICE);
}
!!!...BUT...!!!
--> WSDL "ServiceTWO" generates, in its correspondent XXXX_Service.java, the following method calls, NON-JAXWS21 compliant:
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(WebServiceFeature ... features) {
super(WSDL_LOCATION, SERVICE, features);
}
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(URL wsdlLocation, WebServiceFeature ... features) {
super(wsdlLocation, SERVICE, features);
}
//This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
//API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
//compliant code instead.
public XXXX_Service(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) {
super(wsdlLocation, serviceName, features);
}
If I use only one WSDL file, everything works fine, but when I use two, the second one doesn't work. I also tried to use to separate executions but had no success.
> Maven-codegin-plugin ignores option "frontend" if there is more than one wsdl file
> ----------------------------------------------------------------------------------
>
> Key: CXF-4202
> URL: https://issues.apache.org/jira/browse/CXF-4202
> Project: CXF
> Issue Type: Bug
> Affects Versions: 2.5.2
> Environment: Ubuntu 11.10, Eclipse 3.6.2 (classic), m2e plugin version 0.12.1.20110112-1712, maven-codegen-plugin version 2.5.2
> Reporter: Jose Eduardo Slompo
> Priority: Minor
> Labels: codegen, frontend, maven, wsdl2java
>
> If we have more than one WSDL file for the execution of maven-codegen-plugin and we specify the extraargs "frontend" and "jaxws21", only one of the WSDL generates JAXWS21 compliant Java files.
> POM.XML:
> --------
> <plugin>
> <groupId>org.apache.cxf</groupId>
> <artifactId>cxf-codegen-plugin</artifactId>
> <version>2.5.2.</version>
> <executions>
> <execution>
> <id>generate-wsdl-stubs</id>
> <phase>generate-sources</phase>
> <configuration>
> <sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
> <wsdlOptions>
> <wsdlOption>
> <wsdl>${basedir}/src/main/resources/wsdl/ServiceONE.wsdl</wsdl>
> <wsdl>${basedir}/src/main/resources/wsdl/ServiceTWO.wsdl</wsdl>
> <extraargs>
> <extraarg>-frontend</extraarg>
> <extraarg>jaxws21</extraarg>
> <extraarg>-xjc-Xts</extraarg>
> <extraarg>-xjc-Xdv</extraarg>
> </extraargs>
> </wsdlOption>
> </wsdlOptions>
> </configuration>
> <goals>
> <goal>wsdl2java</goal>
> </goals>
> </execution>
> </executions>
> <dependencies>
> <dependency>
> <groupId>org.apache.cxf.xjcplugins</groupId>
> <artifactId>cxf-xjc-ts</artifactId>
> <version>2.5.2</version>
> </dependency>
> <dependency>
> <groupId>org.apache.cxf.xjcplugins</groupId>
> <artifactId>cxf-xjc-dv</artifactId>
> <version>2.5.2</version>
> </dependency>
> </dependencies>
> </plugin>
> --> WSDL "ServiceONE" generates, in its correspondent XXXX_Service.java, the following method calls, JAXWS21 compliant:
> public XXXX_Service(URL wsdlLocation) {
> super(wsdlLocation, SERVICE);
> }
> public XXXX_Service(URL wsdlLocation, QName serviceName) {
> super(wsdlLocation, serviceName);
> }
> public XXXX_Service() {
> super(WSDL_LOCATION, SERVICE);
> }
> .........BUT........
> --> WSDL "ServiceTWO" generates, in its correspondent XXXX_Service.java, the following method calls, NON-JAXWS21 compliant:
> //This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
> //API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
> //compliant code instead.
> public XXXX_Service(WebServiceFeature ... features) {
> super(WSDL_LOCATION, SERVICE, features);
> }
> //This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
> //API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
> //compliant code instead.
> public XXXX_Service(URL wsdlLocation, WebServiceFeature ... features) {
> super(wsdlLocation, SERVICE, features);
> }
> //This constructor requires JAX-WS API 2.2. You will need to endorse the 2.2
> //API jar or re-run wsdl2java with "-frontend jaxws21" to generate JAX-WS 2.1
> //compliant code instead.
> public XXXX_Service(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) {
> super(wsdlLocation, serviceName, features);
> }
> If I use only one WSDL file, everything works fine, but when I use two, the second one doesn't work. I also tried to use to separate executions but had no success.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira