You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Martin Murphy (JIRA)" <ji...@apache.org> on 2008/11/05 17:15:05 UTC

[jira] Created: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

CXF Binding Component ships with the generated code from the hello_world.wsdl
-----------------------------------------------------------------------------

                 Key: SM-1675
                 URL: https://issues.apache.org/activemq/browse/SM-1675
             Project: ServiceMix
          Issue Type: Improvement
          Components: servicemix-cxf-bc
    Affects Versions: servicemix-cxf-bc-2008.01
            Reporter: Martin Murphy


During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.

Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:

{code:xml}
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>1.2</version>
        <executions>
          <execution>
            <phase>prepare-package</phase>
            <configuration>
              <tasks>
                <echo message="Cleaning up generated code before package"/>
                <delete dir="${basedir}/target/generated"/>
                <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
                <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
                <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
                <delete dir="${basedir}/target/classes/uri"/>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
{code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Freeman Fang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Freeman Fang resolved SM-1675.
------------------------------

    Fix Version/s: 3.3.1
                   3.2.4
       Resolution: Fixed

apply patch on befalf of Martin Murphy with thanks
http://svn.apache.org/viewvc?rev=713258&view=rev for servicemix-cxf-bc component project
http://svn.apache.org/viewvc?rev=713261&view=rev for 3.2 branch

> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>            Assignee: Freeman Fang
>             Fix For: 3.3.1, 3.2.4
>
>         Attachments: build.err.log, SM-1675-2nd.patch.txt, SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Martin Murphy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Murphy updated SM-1675:
------------------------------

    Attachment: SM-1675-2nd.patch.txt

Here is an improved version of the patch that will work with Maven today. This is based on Dan's suggestions. Thanks Dan!

> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>         Attachments: build.err.log, SM-1675-2nd.patch.txt, SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47078#action_47078 ] 

Daniel Kulp commented on SM-1675:
---------------------------------



I think the "correct" fix is to move the codegeneration into the generate-test-sources phase and make it generate into target/generated/test/java instead.   Thus, it's all treated as test artifacts, not source.


> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>         Attachments: SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Martin Murphy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Murphy updated SM-1675:
------------------------------

    Attachment: SM-1675.patch.txt

Here's a patch that won't affect earlier versions of Maven and should clean up the Binding Component once Maven 2.0.11 is released

> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>         Attachments: SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Freeman Fang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Freeman Fang reassigned SM-1675:
--------------------------------

    Assignee: Freeman Fang

> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>            Assignee: Freeman Fang
>         Attachments: build.err.log, SM-1675-2nd.patch.txt, SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (SM-1675) CXF Binding Component ships with the generated code from the hello_world.wsdl

Posted by "Martin Murphy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Murphy updated SM-1675:
------------------------------

    Attachment: build.err.log

That was the first thing I tried, before going with the prepare-package phase :)
Problem is that the generated code isn't compiled then since the generate-test-sources is after the compile phase, so when the tests go to run, the generated code is there, but hasn't been compiled. Maybe there is something I could add to the test mojo, but I [can't see|http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html] anything of use.

> CXF Binding Component ships with the generated code from the hello_world.wsdl
> -----------------------------------------------------------------------------
>
>                 Key: SM-1675
>                 URL: https://issues.apache.org/activemq/browse/SM-1675
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-cxf-bc
>    Affects Versions: servicemix-cxf-bc-2008.01
>            Reporter: Martin Murphy
>         Attachments: build.err.log, SM-1675.patch.txt
>
>
> During the generate-sources phase the WSDL is compiled for the tests, the problem is that this generated code and classes are never removed before the packaging. If you check the CXF BC you will see these are all included in the JAR.
> Unfortunately there is no obvious Maven phase that can be used to clean this up in Maven 2.0.9, although there is an [improvement|http://jira.codehaus.org/browse/MNG-3566] which will allow a prepare-package phase to run, we could remove the generated code here. We could clean this up when Maven 2.0.11 is released. We would need to add something like this:
> {code:xml}
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-antrun-plugin</artifactId>
>         <version>1.2</version>
>         <executions>
>           <execution>
>             <phase>prepare-package</phase>
>             <configuration>
>               <tasks>
>                 <echo message="Cleaning up generated code before package"/>
>                 <delete dir="${basedir}/target/generated"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http"/>
>                 <delete dir="${basedir}/target/classes/org/apache/hello_world_soap_http_provider"/>
>                 <delete dir="${basedir}/target/classes/org/apache/servicemix/samples"/>
>                 <delete dir="${basedir}/target/classes/uri"/>
>               </tasks>
>             </configuration>
>             <goals>
>               <goal>run</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.