Vincent,
        I have succesfully got the cactus:test-war-in-ear working.  Below
are the modified and new targets created.  Since this is my first
contribution to open source I don't know the procedure.  If you can review
and let me know what you think.

thanks,
Marc

MODIFIED GOALS:
  <!--
 
========================================================================
       Compiles the Cactus tests.
 
========================================================================
  -->
  <goal name="cactus:compile" prereqs="cactus:init,java:compile"
      description="Compiles the Cactus tests">

    <ant:mkdir dir="${cactus.target.classes.dir}"/>
    
    <j:choose>
      <j:when test="${cactusSourcePresent == 'true'}">

            <!-- MODIFICATION -->
            <!-- added excludes and includes attributes when src and cactus
test cases are in the same directory -->
        <ant:javac destdir="${cactus.target.classes.dir}"
            excludes="${cactus.test.excludes},**/package.html"
            includes="${cactus.test.includes}"
 
debug="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.debug')}"
 
deprecation="${pom.getPluginContext('maven-java-plugin').getVariable('maven.
compile.deprecation')}"
 
target="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compi
le.target')}"
 
optimize="${pom.getPluginContext('maven-java-plugin').getVariable('maven.com
pile.optimize')}">

          <ant:src path="${cactus.src.dir}"/>
          
          <ant:classpath>
            <ant:path refid="maven.dependency.classpath"/>
            <ant:path refid="cactus.classpath"/>
            <ant:pathelement path="${maven.build.dest}"/>
          </ant:classpath>

          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.compilerargs')}">
            <ant:compilerarg
line="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.compilerargs')}"/>
          </j:if>
          
          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.encoding')}">
            <ant:setProperty name="encoding"
value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.encoding')}"/>
          </j:if>
          
          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.executable')}">
            <ant:setProperty name="executable"
value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.executable')}"/>
          </j:if>
          
          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.fork')}">
            <ant:setProperty name="fork"
value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.fork')}"/>
          </j:if>
          
          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.source')}">
            <ant:setProperty name="source"
value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.source')}"/>
          </j:if>
          
          <j:if
test="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compile
.verbose')}">
            <ant:setProperty name="verbose"
value="${pom.getPluginContext('maven-java-plugin').getVariable('maven.compil
e.verbose')}"/>
          </j:if>
        </ant:javac>
        <!-- END MODIFICATION -->

        <!-- Copy non java source files -->
        <ant:copy todir="${cactus.target.classes.dir}">
          <ant:fileset dir="${cactus.src.dir}">
            <ant:exclude name="**/*.java"/>
            <ant:exclude name="**/*.html"/>
          </ant:fileset>
        </ant:copy>

      </j:when>
      <j:otherwise>
        <ant:echo>No Cactus source files to compile.</ant:echo>
      </j:otherwise>      
    </j:choose>
    
  </goal>

  <!--
 
========================================================================
       Creates ear descriptor - application.xml file
 
========================================================================
  -->
  <goal name="cactus:generate-ear-descriptor" prereqs="cactus:init">

    <mkdir dir="${maven.build.dir}"/>

    <ant:echo>Generating appxml file:[${maven.build.dir}/application.xml]
version ${cactus.j2ee.version}</ant:echo>

    <j:file name="${maven.build.dir}/application.xml" outputMode="xml"
        prettyPrint="true" encoding="UTF-8">

      <j:switch on="${cactus.j2ee.version}">
        <j:case value="1.3">
          <x:doctype name="application" 
              publicId="-//Sun Microsystems, Inc.//DTD J2EE Application
1.3//EN" 
              systemId="http://java.sun.com/dtd/application_1_3.dtd"/>
        </j:case>
        <j:default>
          <x:doctype name="application" 
              publicId="-//Sun Microsystems, Inc.//DTD J2EE Application
1.2//EN"
              systemId="http://java.sun.com/j2ee/dtds/application_1_2.dtd"/>
        </j:default>
      </j:switch>

      <x:element name="application">
        <x:element name="display-name">${pom.name} for Cactus</x:element>
  
        <!-- cactus war file -->
        <x:element name="module">
          <x:element name="web">
            <x:element name="web-uri">${cactus.war.name}</x:element>
            <x:element name="context-root">${pom.artifactId}</x:element>
          </x:element>
        </x:element>

        <!-- ejb module under test -->
        <!-- MODIFICATION -->
        <!-- If war in ear then the ejb reference doesn't get included in
application.xml -->
        <j:if test="${!isWarInEarProject}">
          <x:element name="module">
            <x:element name="ejb">${cactus.ejb.name}</x:element>
          </x:element>
        </j:if>
        <!-- END MODIFICATION -->

        <j:forEach var="lib" items="${pom.artifacts}">
          <j:set var="dep" value="${lib.dependency}"/>
          <j:if test="${dep.getProperty('ear.bundle')=='true' ||
dep.getProperty('ear.module')=='true'}">
            <j:choose>
              <j:when test="${dep.type=='war'}">
                <x:element name="module">
                  <x:element name="web">
                    <x:element
name="web-uri">${dep.getArtifact()}</x:element>
                    <x:element
name="context-root">${dep.getProperty('ear.appxml.war.context-root')}</x:ele
ment>
                 </x:element>                
                </x:element>
              </j:when>
              <j:when test="${dep.type=='ejb'}">
                <x:element name="module">
                  <x:element name="ejb">${dep.getArtifact()}</x:element>

                </x:element>
              </j:when>       
              <j:when test="${dep.type=='jar'}">
                <j:if test="${dep.getProperty('ear.module')=='true'}">
                  <x:element name="module">  
                    <x:element name="java">${dep.getArtifact()}</x:element>

                  </x:element>
                </j:if>
              </j:when>
              <j:when test="${dep.type=='rar'}">
                <x:element name="module">  
                  <x:element
name="connector">${dep.getArtifact()}</x:element>                 
                </x:element>
              </j:when>
              <j:when test="${dep.type=='sar'}">
                <x:element name="module">
                  <x:element
name="connector">${dep.getArtifact()}</x:element>
                </x:element>
              </j:when>
            </j:choose> 
          </j:if>        
        </j:forEach>

      </x:element>
    </j:file>

  </goal>


NEW GOALS:
  <!--
 
========================================================================
       Initialization before cactifying the WAR in EAR
 
========================================================================
  -->
  <goal name="cactus:cactifywar-in-ear-init">
    <j:set var="isWarInEarProject" value="true"/>
  </goal>

  <!--
 
========================================================================
       Generate a Cactified WAR in EAR
 
========================================================================
  -->
  <goal name="cactus:cactifywar-in-ear" 
 
prereqs="cactus:cactifywar-in-ear-init,cactus:cactifywar,cactus:generate-ear
-descriptor"
      description="Create and cactify a WAR in EAR">

    <ant:mkdir dir="${maven.build.dir}"/>

    <!-- Ensure that the ear properties are loaded in memory so that they
can be
         referenced -->
    <attainGoal name="ear:load"/>
         
    <ant:available property="cactus.ear.manifest.available"
 
file="${pom.getPluginContext('maven-ear-plugin').getVariable('maven.ear.mani
fest')}"/>

    <ant:available property="cactus.ear.src.available"
 
file="${pom.getPluginContext('maven-ear-plugin').getVariable('maven.ear.src'
)}"/>

    <!-- don't think this is necessary if this is in the plugin -->
    <j:set var="cactus.ear"
value="${maven.build.dir}/${pom.artifactId}-cactus.ear"/>
        
    <ant:ear destfile="${cactus.ear}" 
        appxml="${maven.build.dir}/application.xml">

      <j:if test="${cactus.ear.src.available}">
        <fileset
dir="${pom.getPluginContext('maven-ear-plugin').getVariable('maven.ear.src')
}"
            casesensitive="false" excludes="**/META-INF/application.xml"/>
      </j:if>

      <!-- include cactus generated archives -->
      <ant:fileset dir="${cactus.war.dir}">
        <ant:include name="${cactus.war.name}"/>
      </ant:fileset>

      <!-- include marked dependencies -->
      <j:forEach var="lib" items="${pom.artifacts}">
        <j:set var="dep" value="${lib.dependency}"/>      
        <j:if test="${dep.getProperty('ear.bundle')=='true' ||
dep.getProperty('ear.module')=='true'}">
          <ant:fileset dir="${lib.file.parent}">
            <ant:include name="${lib.file.name}"/>
          </ant:fileset>
        </j:if>  
      </j:forEach>

      <j:if test="${cactus.ear.manifest.available}">
        <ant:setProperty name="manifest" 
 
value="${pom.getPluginContext('maven-ear-plugin').getVariable('maven.ear.man
ifest')}"/>
      </j:if>

    </ant:ear>
  </goal>

  <!--
 
========================================================================
       Execute the Cactus tests, packaging them in an EAR.
 
========================================================================
  -->
  <goal name="cactus:test-war-in-ear"
      prereqs="cactus:init,cactus:init-report,cactus:cactifywar-in-ear"
      description="Run all Cactus tests (packaged in an EAR)">

    <cactus earfile="${cactus.ear}" fork="yes" 
        errorproperty="cactustests.error"
failureproperty="cactustests.failure"
        printsummary="${maven.cactus.printsummary}">

      <!-- Configure the cactus task for logging -->
      <j:if test="${context.getVariable('cactus.logging.config.client') !=
null}">
        <cactusproperty server="false"
            propertiesFile="${cactus.logging.config.client}"/>
      </j:if>            
      <j:if test="${context.getVariable('cactus.logging.config.server') !=
null}">
        <cactusproperty server="true"
            propertiesFile="${cactus.logging.config.server}"/>
      </j:if>            

      <ant:classpath>
        <ant:pathelement path="${maven.build.dest}"/>
        <ant:pathelement location="${cactus.target.classes.dir}"/>
        <ant:path refid="maven.dependency.classpath"/>
        <ant:path refid="cactus.classpath"/>
      </ant:classpath>

      <containerset>

        <!-- Note: The port attribute for JBoss is only used for custom 
             configs -->
        <jboss3x if="cactus.home.jboss3x" port="${cactus.port}"
            dir="${cactus.home.jboss3x}"
            output="${cactus.reports.dir}/jboss3x.out"
            todir="${cactus.reports.dir}/jboss3x"
            config="${cactus.jboss3x.config.name}">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.jboss3x.jndiport') !=
null}">
            <ant:setProperty name="jndiport"
value="${cactus.jboss3x.jndiport}"/>
          </j:if>    
        </jboss3x>

        <orion1x if="cactus.home.orion1x" port="${cactus.port}"
            dir="${cactus.home.orion1x}"
            output="${cactus.reports.dir}/orion1x.out"
            todir="${cactus.reports.dir}/orion1x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
        </orion1x>

        <orion2x if="cactus.home.orion2x" port="${cactus.port}"
            dir="${cactus.home.orion2x}"
            output="${cactus.reports.dir}/orion2x.out"
            todir="${cactus.reports.dir}/orion2x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
        </orion2x>

        <resin2x if="cactus.home.resin2x" port="${cactus.port}"
            dir="${cactus.home.resin2x}"
            output="${cactus.reports.dir}/resin2x.out"
            todir="${cactus.reports.dir}/resin2x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.resin2x.config') !=
null}">
            <ant:setProperty name="resinconf"
value="${cactus.resin2x.config}"/>
          </j:if>
        </resin2x>

        <resin3x if="cactus.home.resin3x" port="${cactus.port}"
            dir="${cactus.home.resin3x}"
            output="${cactus.reports.dir}/resin3x.out"
            todir="${cactus.reports.dir}/resin3x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.resin3x.config') !=
null}">
            <ant:setProperty name="resinconf"
value="${cactus.resin3x.config}"/>
          </j:if>
        </resin3x>

        <tomcat4x if="cactus.home.tomcat4x" port="${cactus.port}"
            dir="${cactus.home.tomcat4x}"
            output="${cactus.reports.dir}/tomcat4x.out"
            todir="${cactus.reports.dir}/tomcat4x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat4x.config') !=
null}">
            <ant:setProperty name="serverxml"
value="${cactus.tomcat4x.config}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat4x.tmpdir') !=
null}">
            <ant:setProperty name="tmpdir"
value="${cactus.tomcat4x.tmpdir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat4x.conf.dir') !=
null}">
            <conf dir="${cactus.tomcat4x.conf.dir}"
                includes="${cactus.tomcat4x.conf.includes}"
                excludes="${cactus.tomcat4x.conf.excludes}"/>
          </j:if>
        </tomcat4x>

        <tomcat5x if="cactus.home.tomcat5x" port="${cactus.port}"
            dir="${cactus.home.tomcat5x}"
            output="${cactus.reports.dir}/tomcat5x.out"
            todir="${cactus.reports.dir}/tomcat5x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat5x.config') !=
null}">
            <ant:setProperty name="serverxml"
value="${cactus.tomcat5x.config}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat5x.tmpdir') !=
null}">
            <ant:setProperty name="tmpdir"
value="${cactus.tomcat5x.tmpdir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.tomcat5x.conf.dir') !=
null}">
           <conf dir="${cactus.tomcat5x.conf.dir}"
               includes="${cactus.tomcat5x.conf.includes}"
               excludes="${cactus.tomcat5x.conf.excludes}"/>
          </j:if>
        </tomcat5x>

        <weblogic7x if="cactus.home.weblogic7x" port="${cactus.port}"
            dir="${cactus.home.weblogic7x}"
            output="${cactus.reports.dir}/weblogic7x.out"
            todir="${cactus.reports.dir}/weblogic7x">
          <j:if test="${context.getVariable('cactus.tmp.dir') != null}">
            <ant:setProperty name="tmpdir" value="${cactus.tmp.dir}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.weblogic7x.beahome') !=
null}">
            <ant:setProperty name="beahome"
value="${cactus.weblogic7x.beahome}"/>
          </j:if>
          <j:if test="${context.getVariable('cactus.weblogic7x.config') !=
null}">
            <ant:setProperty name="configxml"
value="${cactus.weblogic7x.config}"/>
          </j:if>
        </weblogic7x>

      </containerset>

      <ant:formatter type="plain" usefile="${cactus.junit.usefile}"/>
      <ant:formatter type="xml"/>

      <ant:batchtest>
        <ant:fileset dir="${cactus.src.dir}"
            includes="${cactus.test.includes}"
            excludes="${cactus.test.excludes}"/>
      </ant:batchtest>

    </cactus>

    <!-- TODO: Change the Cactus stylesheet (cactus.jsl) to handle reports
         for several containers -->
        
    <!-- Consolidate the reports into a single -->
    <ant:junitreport todir="${cactus.reports.dir}"
        tofile="TESTS-TestSuites-Cactus.xml">

      <j:if test="${context.getVariable('cactus.home.jboss3x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/jboss3x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.orion1x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/orion1x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.orion2x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/orion2x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.resin2x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/resin2x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.resin3x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/resin3x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.tomcat4x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/tomcat4x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.tomcat5x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/tomcat5x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

      <j:if test="${context.getVariable('cactus.home.weblogic7x') != null}">
        <ant:fileset dir="${cactus.reports.dir}/weblogic7x">
          <ant:include name="TEST-*.xml"/>
        </ant:fileset>
      </j:if>

    </ant:junitreport>
    
    <j:if test="${cactus.halt.on.failure}">
      <ant:fail if="cactustests.failure">At least one test had a
failure!</ant:fail>
    </j:if>
    <j:if test="${cactus.halt.on.error}">
      <ant:fail if="cactustests.error">At least one test had an
error!</ant:fail>
    </j:if>

  </goal>

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Friday, September 10, 2004 3:11 PM
To: [EMAIL PROTECTED]
Subject: RE: cactus:catifyear


Ran into a little issue.  Since my source code, cactus tests are in the same
source tree it is causing duplicate files to be added to the cactified war.

src (all code)
src\com\** (real code)
src\test\** (container tests)

My properties are set to:
maven.war.classes.includes=com/**
maven.war.classes.excludes=test/**
cactus.test.includes=test/**/TestContainer*,test/**/*.xml
cactus.test.excludes=com/**

The pre-cactified war doesn't include the test files (which is good), but
the cactified war includes the real code twice.  My app server (weblogic
8.1) complains during deployment about the duplicate files.

I thought that this would fix it in cactus:cactifywar (I added the <include
/> and <exclude />) but no luck.
    <cactifywar version="2.3" destfile="${cactus.war}">

        ...
  
      <ant:classes dir="${cactus.target.classes.dir}">
        <include name="${cactus.test.includes}" />
        <exclude name="${cactus.test.excludes}" />
      </ant:classes>

        ...
                           
    </cactifywar>

Any ideas?

After this gets resolved I believe that cactus:test-war-in-ear will be ready
to go.  I will start looking at the code prior to building the war (copying
of files into the target/test-cactus-classes now, and see if I can pinpoint
it.

Marc

-----Original Message-----
From: Vincent Massol [mailto:[EMAIL PROTECTED]
Sent: Friday, September 10, 2004 1:13 PM
To: 'Cactus Users List'
Subject: RE: cactus:catifyear




> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]
> Sent: vendredi 10 septembre 2004 19:54
> To: [EMAIL PROTECTED]
> Subject: RE: cactus:catifyear
> 
> OK, finally have time to attempt this.
> 
> My plan is:
> 1) get cactus:test-war-in-ear working.  This will build the cactified war
> as
> normal, wrap the war in an ear including any dependencies that have
> ear.bundle
> 2) Look into modifying cactus:test to detect whether to call :test-war,
> :test-ear, or :test-war-in-ear

Looks cool! Thanks Marc

-Vincent

> 
> 
> 
> -----Original Message-----
> From: Vincent Massol [mailto:[EMAIL PROTECTED]
> Sent: Saturday, August 21, 2004 2:59 AM
> To: 'Cactus Users List'
> Subject: RE: cactus:catifyear
> 
> 
> Hi Marc,
> 
> Yes, I think that would be very useful. Maybe the plugin can automatically
> detect if it needs to deploy the WAR as an EAR or not?
> 
> I'd suggest that the plugin checks to see if there are any ejb defined as
> dependencies in the project.xml and that they are tagged with some
> property
> such as ear.bundle (this is the property used by the EAR plugin to decide
> what artifact to bundle in the ear). If there are any the plugin could
> wrap
> the cactified war in an ear, adding to the ear the artifacts marked with
> ear.bundle. Another alternative is to name the property cactus.ear.bundle.
> 
> We can also have an explicitely named goal. We already have cactus:test-
> war
> and cactus:test-ear. We could have cactus:test-war-in-ear.
> 
> Thanks
> -Vincent
> 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > Sent: mercredi 18 août 2004 19:35
> > To: [EMAIL PROTECTED]
> > Subject: cactus:catifyear
> >
> > I have been using cactus and ant extensively and now attempting to
> convert
> > to maven.  I have been successful at the following:
> >
> > - run ejb tests
> > - run war tests (no ejb dependencies)
> >
> > Now I am trying to run war tests that have dependencies on ejbs (jsps
> call
> > Business Delegate which calls stateless session bean).  In our current
> dev
> > process we bundle the ejb and war into one ear file and don't use ejb-
> ref
> > declarations in the web.xml.  In other words, we don't use the
> > java:comp/env
> > approach when we look up our ejbs.  This is causing problems for me as I
> > want to test the servlet code that uses the ejbs, but at the same time
> > don't
> > want to change the code to support run the tests.  I ran into the same
> > issues when using cactus and ant, and ended up writing a customer target
> > to
> > do what I needed.
> >
> > I guess what I am looking for is cactus:cactifywarinear (war-in-ear):
> > - call cactus:cactifywar
> > - create an ear that contains the the cactified war as well as depencies
> > with cactus.bundle = true
> > - do the normal startup, deploy the cactus-ear, run tests, shut down.
> >
> > Since the *.jelly file code is very straightforward I am gonna attempt
> to
> > create a new goal to test and see how it goes.  Is this a feature that
> > others would like?  I hope I explained things clearly.
> >
> > Marc
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to