> -----Original Message-----
> From: mark babcock [mailto:markababc...@gmail.com] 
> Sent: Wednesday, February 03, 2010 2:19 PM
> To: Cactus Users List
> Subject: maven2 goals for cactus
> 
> I am trying to get maven2 to work with cactus.
> 
> I started by creating a new web archetype and then created a 
> servlet (helloworld ) and then i placed the servlet mappings 
> into my web.xml.
> I was able to use jetty and run the servelt with the command 
> mvn jetty:run-war
> 
> 
> Next I wanted to make a cactus test.  I created the following 
> pom.xml (see
> below) after fumbling around with sample pom.xml listed on 
> the cactus site (which doesn't work!).
> 
> If I run mvn clean test no cactus stuff  (cactifywar or any 
> cactus tests) runs.
> However, if I run mvn clean install then it at least goes 
> through and makes
> a cactifywar.  I am still unable to run  mvn cactus:test   it says the
> required goal not
> found.  Is there any documentation that works on how to great 
> a cactus test with maven2 and how to run it?
> 
> 
> ----  pom.xml ---
> <project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance";
>   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/maven-v4_0_0.xsd";>
>   <modelVersion>4.0.0</modelVersion>
>   <groupId>gov.virginia.dss</groupId>
>   <artifactId>RajDemoHudsonCactus</artifactId>
>   <packaging>war</packaging>
>   <version>1.0-SNAPSHOT</version>
>   <name>RajDemoHudsonCactus Maven Webapp</name>
>   <url>http://maven.apache.org</url>
> <repositories>
>  <repository>
>   <id>java.net</id>
>   <url>http://download.java.net/maven/2</url>
>  </repository>
> </repositories>
>   <dependencies>
>     <dependency>
>       <groupId>junit</groupId>
>       <artifactId>junit</artifactId>
>       <version>4.4</version>
>       <scope>test</scope>
>     </dependency>
>  <dependency>
>   <groupId>javax</groupId>
>   <artifactId>javaee-api</artifactId>
>   <version>6.0</version>
>   <scope>compile</scope>
>  </dependency>
>  <dependency>
>   <groupId>org.apache.cactus</groupId>
>   <artifactId>cactus.core.framework.uberjar.javaEE.15</artifactId>
>   <version>1.8.1</version>
>  </dependency>
>  <dependency>
>   <groupId>org.apache.cactus</groupId>
>   <artifactId>cactus.integration.shared.api</artifactId>
>   <version>1.8.1</version>
>  </dependency>
>   </dependencies>
>   <build>
>  <finalName>RajDemoHudsonCactus</finalName>
>  <plugins>
>   <plugin>
>    <groupId>org.mortbay.jetty</groupId>
>    <artifactId>maven-jetty-plugin</artifactId>
>   </plugin>
>       <plugin>
>         <groupId>org.apache.cactus</groupId>
>         <artifactId>cactus.integration.maven2</artifactId>
>         <version>1.8.1</version>
>      <configuration>
>           <srcFile>target/RajDemoHudsonCactus.war</srcFile>
>           <destFile>target/cactifiedByMaven2.war</destFile>
>         </configuration>
>         <executions>
>           <execution>
>             <id>cactus-cactifywar</id>
>             <phase>pre-integration-test</phase>
>             <goals>
>               <goal>cactifywar</goal>
>             </goals>
>           </execution>
>         </executions>
>       </plugin>
>       <plugin>
>         <groupId>org.codehaus.cargo</groupId>
>         <artifactId>cargo-maven2-plugin</artifactId>
>         <version>1.0</version>
> 
> 
>       </plugin>
>       <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-surefire-plugin</artifactId>
>         <configuration>
>           <skip>true</skip>
>         </configuration>
>       </plugin>
>     </plugins>
> </build>
> </project>
> 

I use the following inside the build:
                        <plugin>
                                <groupId>org.apache.cactus</groupId>
                                
<artifactId>cactus.integration.maven2</artifactId>
                                <version>1.8.1</version>
                                <configuration>
                                        
<srcFile>${project.build.directory}/restutils.war</srcFile>
                                        
<destFile>${project.build.directory}/cactifiedByMaven2.war</destFile>
                                        <libDependencies />
                                        <testClasses>
                                                
<directory>${project.build.directory}/test-classes</directory>
                                                <includes>
                                                        
<include>**/*Test*.*</include>
                                                </includes>
                                        </testClasses>
                                </configuration>
                                <executions>
                                        <execution>
                                                <id>cactus-cactifywar</id>
                                                
<phase>pre-integration-test</phase>
                                                <goals>
                                                        <goal>cactifywar</goal>
                                                </goals>
                                        </execution>
                                </executions>
                        </plugin>

To create a catified war, then

                        <plugin>
                                <groupId>org.codehaus.cargo</groupId>
                                <artifactId>cargo-maven2-plugin</artifactId>
                                <version>1.0</version>
                                <executions>
                                        <execution>
                                                <id>start-container</id>
                                                
<phase>pre-integration-test</phase>
                                                <goals>
                                                        <goal>start</goal>
                                                </goals>
                                        </execution>
                                        <execution>
                                                <id>stop-container</id>
                                                
<phase>post-integration-test</phase>
                                                <goals>
                                                        <goal>stop</goal>
                                                </goals>
                                        </execution>
                                </executions>
                                <configuration>
                                        <wait>false</wait>
                                        <timeout>20000</timeout>
                                        <container>
                                                
<containerId>tomcat5x</containerId>
                                                <zipUrlInstaller>
                                                        
<url>http://apache.cs.uu.nl/dist/tomcat/tomcat-5/v5.5.28/bin/apache-tomcat-5.5.28.zip</url>
                                                        
<installDir>${basedir}/tc-install</installDir>
                                                        <proxy>
                                                                
<host>wpad</host>
                                                                
<port>8080</port>
                                                        </proxy>
                                                </zipUrlInstaller>
                                        </container>
                                        <configuration>
                                                <deployables>
                                                        <deployable>
                                                                
<location>${project.build.directory}/cactifiedByMaven2.war</location>
                                                                
<pingURL>http://localhost:8820/test/</pingURL>
                                                                <properties>
                                                                        
<context>/test</context>
                                                                </properties>
                                                        </deployable>
                                                </deployables>
                                                <properties>
                                                        
<cargo.servlet.port>8820</cargo.servlet.port>
                                                </properties>
                                        </configuration>
                                </configuration>
                        </plugin>

To get a version of tomcat for running the test and then for running the test, 
run the test with mvn integration-test

                        <plugin>
                                <groupId>org.apache.maven.plugins</groupId>
                                <artifactId>maven-surefire-plugin</artifactId>
                                <configuration>
                                        <skip>true</skip>
                                </configuration>
                                <version>2.4.3</version>
                                <executions>
                                        <execution>
                                                <id>surefire-it</id>
                                                <phase>integration-test</phase>
                                                <goals>
                                                        <goal>test</goal>
                                                </goals>
                                                <configuration>
                                                        <skip>false</skip>
                                                        <systemProperties>
                                                                <property>
                                                                        
<name>cactus.contextURL</name>
                                                                        
<value>http://localhost:8820/test</value>
                                                                </property>
                                                        </systemProperties>
                                                </configuration>
                                        </execution>
                                </executions>
                        </plugin>

I haven't found a way yet to merge the test coverage / results of the it-test 
with the regular unit test that are run as well


 Met vriendelijke groet,
 
Mark Prins
applicatie ontwikkelaar Geo-Informatie Systemen

-- 

GIS Competence Center (een samenwerking van DLG en DR)
Dienst Landelijk Gebied
Kamer 11.27
Herman Gorterstraat 5
3511 EW Utrecht

Postbus 20021
3502 LA Utrecht

tel: 030 275 6877 / fax: 030 275 6999 / twitter: @mc_prins
--  
Dit bericht kan informatie bevatten die niet voor u is bestemd. Indien u niet 
de geadresseerde bent of dit bericht abusievelijk aan u is gezonden, wordt u 
verzocht dat aan de afzender te melden en het bericht te verwijderen. De Staat 
aanvaardt geen aansprakelijkheid voor schade, van welke aard ook, die verband 
houdt met risico's verbonden aan het elektronisch verzenden van berichten. 

This message may contain information that is not intended for you. If you are 
not the addressee or if this message was sent to you by mistake, you are 
requested to inform the sender and delete the message. The State accepts no 
liability for damage of any kind resulting from the risks inherent in the 
electronic transmission of messages.


---------------------------------------------------------------------
To unsubscribe, e-mail: cactus-user-unsubscr...@jakarta.apache.org
For additional commands, e-mail: cactus-user-h...@jakarta.apache.org

Reply via email to