<?xml version="1.0" encoding="UTF-8"?>

<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements. See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership. The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied. See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License.
  -->

<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>
    <parent>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-parent</artifactId>
        <version>1.4</version>
        <relativePath>../parent/pom.xml</relativePath>
    </parent>
    <artifactId>axis2-jaxws-integration</artifactId>
    <name>Apache Axis2 - JAXWS Integration Tests</name>
    <description>Axis2 JAXWS Integration Tests</description>
    <dependencies>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-annotation_1.0_spec</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-kernel</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>addressing</artifactId>
            <version>${version}</version>
            <type>mar</type>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-jaxws-api</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-saaj-api</artifactId>
            <version>${version}</version>
            <exclusions>
                <exclusion>
                    <groupId>org.apache.geronimo.specs</groupId>
                    <artifactId>geronimo-javamail_1.4_spec</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-adb</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-saaj</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-metadata</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-jaxws</artifactId>
            <version>${version}</version>
        </dependency>
        <dependency>
            <groupId>xml-resolver</groupId>
            <artifactId>xml-resolver</artifactId>
        </dependency>
        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>jsr173</artifactId>
                    <groupId>javax.xml</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-xjc</artifactId>
        </dependency>
        <dependency>
            <groupId>xalan</groupId>
            <artifactId>xalan</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>jsr173</artifactId>
                    <groupId>javax.xml</groupId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
    <build>
        <sourceDirectory>src</sourceDirectory>
        <testSourceDirectory>test</testSourceDirectory>
        <resources>
            <resource>
                <directory>../..</directory>
                <includes>
                    <include>NOTICE.txt</include>
                    <include>LICENSE.txt</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>conf</directory>
                <includes>
                    <include>**/*.properties</include>
                </includes>
            </resource>
            <resource>
                <directory>src</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>resources</directory>
                <includes>
                    <include>**/*</include>
                </includes>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>test</directory>
                <includes>
                    <include>**/*.xml</include>
                    <include>**/*.wsdl</include>
                    <include>**/*.properties</include>
                </includes>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <inherited>true</inherited>
                <configuration>
                    <compilerArgument>
                        -Xbootclasspath/p:${basedir}/../jaxws-api/target/classes${path.separator}${basedir}/../jws-api/target/classes
                    </compilerArgument>
                    <compilerVersion>1.5</compilerVersion>
                    <source>1.5</source>
                    <target>1.5</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <id>gen-ts</id>
                        <phase>generate-test-sources</phase>
                        <configuration>
                            <tasks>
                                <!-- Theres got to be a better way to do this -->
                                <property name="schema.source.dir" value="test-resources/xsd"/>
                                <property name="wsdl.source.dir" value="test-resources/wsdl"/>
                                <property name="schema.output.base.dir" value="target/schema"/>
                                <property name="schema.generated.src.dir" value="${schema.output.base.dir}/src"/>
                                <property name="schema.generated.classes.dir"
                                          value="${schema.output.base.dir}/classes"/>
                                <!-- make the dirs -->
                                <mkdir dir="${schema.output.base.dir}"/>
                                <mkdir dir="${schema.generated.src.dir}"/>
                                <mkdir dir="${schema.generated.classes.dir}"/>
                                <!-- Run JAXB schema compiler with designated schemas -->
                                <echo>Generating JAX-B classes from XSDs</echo>
                                <echo>Generating java from soap 11</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet  ${schema.source.dir}/soap11.xsd"/>
                                </java>
                                <echo>Generating java from echo.xsd</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet  ${schema.source.dir}/echo.xsd"/>
                                </java>
                                <echo>Generating java from stock1.xsd</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet ${schema.source.dir}/stock1.xsd"/>
                                </java>
                                <echo>Generating java from stock2.xsd</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet ${schema.source.dir}/stock2.xsd"/>
                                </java>
                                <echo>Generating java from samplemtom.xsd</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet ${schema.source.dir}/samplemtom.xsd"/>
                                </java>
                                <echo>Generating java from ProxyDocLitWrapped.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -p org.test.proxy.doclitwrapped -quiet -wsdl ${wsdl.source.dir}/ProxyDocLitWrapped.wsdl"/>
                                </java>
                                <echo>Generating java from AddNumbers.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/AddNumbers.wsdl"/>
                                </java>
                                <echo>Generating java from ProxyDocLitnonWrapped.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/ProxyDocLitnonWrapped.wsdl"/>
                                </java>
                                <echo>Generating java from samplemtomjpeg.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/samplemtomjpeg.wsdl"/>
                                </java>
                                <echo>Generating java from RPCLit.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -p org.test.proxy.rpclit -quiet -wsdl ${wsdl.source.dir}/RPCLit.wsdl"/>
                                </java>
                                <echo>Generating java from RPCLitSWA.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -p org.test.proxy.rpclitswa -quiet -wsdl ${wsdl.source.dir}/RPCLitSWA.wsdl"/>
                                </java>
                                <echo>Generating java from gorilla_dlw.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/gorilla_dlw.wsdl"/>
                                </java>
                                <echo>Generating java from SOAP12Echo.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/SOAP12Echo.wsdl"/>
                                </java>
                                <echo>Generating java from AddNumbersHandler.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/AddNumbersHandler.wsdl"/>
                                </java>
                                <echo>Generating java from async_doclitwr.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/async_doclitwr.wsdl"/>
                                </java>
                                <echo>Generating java from async_doclitwr2.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/async_doclitwr2.wsdl"/>
                                </java>
                                <echo>Generating java from FaultyWebService.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/FaultyWebService.wsdl"/>
                                </java>
                                <echo>Generating java from FaultsService.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/FaultsService.wsdl"/>
                                </java>
                                <echo>Generating java from jaxbsource</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -p org.test.dispatch.jaxbsource ${schema.source.dir}/jaxbsource.xsd"/>
                                </java>
                                <echo>Generating java from doclit_nonwrap.wsdl for javabean endpoint
                                    support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/doclit_nonwrap.wsdl"/>
                                </java>
                                <echo>Generating java from doclitwrap.wsdl for javabean endpoint
                                    support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/doclitwrap.wsdl"/>
                                </java>
                                <echo>Generating java from doclitbare.wsdl for javabean endpoint
                                    support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/doclitbare.wsdl"/>
                                </java>
                                <echo>Generating java from greeterTypes.xsd</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet ${schema.source.dir}/greeterTypes.xsd"/>
                                </java>
                                <echo>Generating java from EchoMessage.wsdl for javabean endpoint
                                    support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/EchoMessage.wsdl"/>
                                </java>
                                <echo>Generating java from resourceinjection.wsdl for javabean
                                    endpoint Resource Injection support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/resourceinjection.wsdl"/>
                                </java>
                                <echo>Generating java from AnyType.wsdl for javabean endpoint
                                    AnyType support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/AnyType.wsdl"/>
                                </java>
                                <echo>Generating java from MessageContext.wsdl for message context
                                    properties support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/MessageContext.wsdl"/>
                                </java>
                                <echo>Generating java from WSDLMultiTests.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/WSDLMultiTests.wsdl"/>
                                </java>
                                <echo>Generating java from Polymorphic shapes.wsdl for javabean
                                    endpoint support
                                </echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/shapes.wsdl"/>
                                </java>
                                <echo>Generating java from SOAPActionTest.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/SOAPActionTest.wsdl"/>
                                </java>
                                <echo>Generating java from rpclitenum.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/rpclitenum.wsdl"/>
                                </java>
                                <echo>Generating java from AddNumbersHandler.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/AddNumbersHandler.wsdl"/>
                                </java>
                                <echo>Generating java from rpclitstringarray.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/rpclitstringarray.wsdl"/>
                                </java>
                                <echo>Generating java from swamtomservice.wsdl</echo>
                                <java classname="com.sun.tools.xjc.Driver" fork="true">
                                    <classpath refid="maven.runtime.classpath"/>
                                    <classpath location="${compiled.classes.dir}"/>
                                    <arg line="-d ${schema.generated.src.dir} -quiet -wsdl ${wsdl.source.dir}/swamtomservice.wsdl"/>
                                </java>
                            </tasks>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>build-repo</id>
                        <phase>test-compile</phase>
                        <configuration>
                            <tasks>

                                <!-- Enable Addressing on the client side -->
                                <mkdir dir="./target/client-repo/modules/"/>
                                <copy file="../addressing/target/addressing-${version}.mar"
                                      tofile="./target/client-repo/modules/addressing-${version}.mar"/>

                                <!-- Enable Addressing on the server side -->
                                <mkdir dir="./target/test-classes/modules/"/>
                                <copy file="../addressing/target/addressing-${version}.mar"
                                      tofile="./target/test-classes/modules/addressing-${version}.mar"/>

                                <!-- ================================================================ -->
                                <!--- Non-JAXWS services -->
                                <!-- ================================================================ -->

                                <copy toDir="target/test-classes/services/EchoService/">
                                    <fileset dir="target/test-classes">
                                        <include name="server/**"/>
                                    </fileset>
                                    <fileset dir="test/server">
                                        <exclude name="**/*.java"/>
                                    </fileset>
                                </copy>
                                <copy toDir="target/test-classes/services/BookStoreService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/client/soapaction/**"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/client/soapaction/server">
                                        <include name="META-INF/**"/>
                                    </fileset>
                                </copy>

                                <mkdir dir="./target/test-classes/servicejars"/>
                                <!-- ================================================================ -->
                                <!--- JAXWS services -->
                                <!-- ================================================================ -->
                                <!-- ================================================================ -->
                                <!--- Provider endpoint Service Samples -->
                                <!-- ================================================================ -->
                                <copy toDir="target/test-classes/servicejars/WSGenService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/wsgen/WSGenInterface.class"/>
                                        <include name="org/apache/axis2/jaxws/sample/wsgen/WSGenImpl.class"/>
                                        <include name="org/apache/axis2/jaxws/sample/wsgen/jaxws/**"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/wsgen">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/WSGenService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/WSGenService"
                                        />
                                <delete dir="target/test-classes/servicejars/WSGenService"/>

                                <copy toDir="target/test-classes/servicejars/BasicAuthSecurityService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/security/server/**"/>
                                        <exclude name="org/apache/axis2/jaxws/security/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/security/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/BasicAuthSecurityService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/BasicAuthSecurityService"
                                        />
                                <delete dir="target/test-classes/servicejars/BasicAuthSecurityService"/>

                                <copy toDir="target/test-classes/servicejars/StringProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/string/**"/>
                                        <exclude name="org/apache/axis2/jaxws/provider/string/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/string">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/StringProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/StringProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/StringProviderService"/>

                                <copy toDir="target/test-classes/servicejars/StringMessageProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/stringmsg/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/provider/stringmsg/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/stringmsg">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/StringMessageProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/StringMessageProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/StringMessageProviderService"/>

                                <copy toDir="target/test-classes/servicejars/SourceProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/source/**"/>
                                        <exclude name="org/apache/axis2/jaxws/provider/source/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/source">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SourceProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SourceProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/SourceProviderService"/>

                                <copy toDir="target/test-classes/servicejars/SourceMessageProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/sourcemsg/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/provider/sourcemsg/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/sourcemsg">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SourceMessageProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SourceMessageProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/SourceMessageProviderService"/>

                                <copy toDir="target/test-classes/servicejars/SoapMessageProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/soapmsg/**"/>
                                        <exclude name="org/apache/axis2/jaxws/provider/soapmsg/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/soapmsg">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SoapMessageProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SoapMessageProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/SoapMessageProviderService"/>

                                <copy toDir="target/test-classes/servicejars/SoapMessageCheckMTOMProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/soapmsgcheckmtom/**"/>
                                        <exclude name="org/apache/axis2/jaxws/provider/soapmsgcheckmtom/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/soapmsgcheckmtom">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SoapMessageCheckMTOMProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SoapMessageCheckMTOMProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/SoapMessageCheckMTOMProviderService"/>
                                
                                <copy toDir="target/test-classes/servicejars/SoapMessageMUProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/soapmsgmu/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/provider/soapmsgmu/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/soapmsgmu">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SoapMessageMUProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SoapMessageMUProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/SoapMessageMUProviderService"/>

                                <copy toDir="target/test-classes/servicejars/JAXBProviderService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/jaxb/**"/>
                                        <exclude name="org/apache/axis2/jaxws/provider/jaxb/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/jaxb">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="target/schema/classes">
                                        <include name="org/test/mtom/**"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/JAXBProviderService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/JAXBProviderService"
                                        />
                                <delete dir="target/test-classes/servicejars/JAXBProviderService"/>

                                <copy toDir="target/test-classes/servicejars/SendImageService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/mtom1/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/mtom1/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/mtom1">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="target/schema/classes">
                                        <include name="org/apache/axis2/jaxws/sample/mtom1/**"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SendImageService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SendImageService"
                                        />
                                <delete dir="target/test-classes/servicejars/SendImageService"/>

                                <copy toDir="target/test-classes/servicejars/SOAP12Service/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/dispatch/server/**"/>
                                        <exclude name="org/apache/axis2/jaxws/dispatch/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/dispatch/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SOAP12Service.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SOAP12Service"
                                        />
                                <delete dir="target/test-classes/servicejars/SOAP12Service"/>


                               <copy toDir="target/test-classes/servicejars/SWAMTOMService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/swamtom/server/**"/>
                                        <exclude name="org/apache/axis2/jaxws/swamtom/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/swamtom/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SWAMTOMService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SWAMTOMService"/>
                                <delete dir="target/test-classes/servicejars/SWAMTOMService"/>
                                <!-- ================================================================ -->
                                <!--- Proxy endpoint Service Samples -->
                                <!-- ================================================================ -->
                                <copy toDir="target/test-classes/servicejars/ProxyDocLitWrapped/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/doclitwrapped/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/proxy/doclitwrapped/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/doclitwrapped">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/ProxyDocLitWrapped.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/ProxyDocLitWrapped"
                                        />
                                <delete dir="target/test-classes/servicejars/ProxyDocLitWrapped"/>

                                <copy toDir="target/test-classes/servicejars/ProxyDocLitnonWrapped/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/doclitnonwrapped/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/proxy/doclitnonwrapped/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/doclitnonwrapped">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/ProxyDocLitnonWrapped.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/ProxyDocLitnonWrapped"
                                        />
                                <delete dir="target/test-classes/servicejars/ProxyDocLitnonWrapped"/>

                                <copy toDir="target/test-classes/servicejars/RPCLit/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/rpclit/**"/>
                                        <exclude name="org/apache/axis2/jaxws/proxy/rpclit/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/rpclit">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/RPCLit.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/RPCLit"
                                        />
                                <delete dir="target/test-classes/servicejars/RPCLit"/>

                                <copy toDir="target/test-classes/servicejars/RPCLitSWA/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/rpclitswa/**"/>
                                        <exclude name="org/apache/axis2/jaxws/proxy/rpclitswa/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/rpclitswa">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/RPCLitSWA.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/RPCLitSWA"
                                        />
                                <delete dir="target/test-classes/servicejars/RPCLitSWA"/>

                                <copy toDir="target/test-classes/servicejars/AddressingProvider/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/provider/addressing/**"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/provider/addressing/">
                                        <include name="META-INF/**"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/AddressingProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AddressingProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/AddressingProvider"/>

                                <copy toDir="target/test-classes/servicejars/SOAP12EchoService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/soap12/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/proxy/soap12/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/soap12/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/SOAP12EchoService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/SOAP12EchoService"
                                        />
                                <delete dir="target/test-classes/servicejars/SOAP12EchoService"/>

                                <copy toDir="target/test-classes/servicejars/gorilla_dlw/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/proxy/gorilla_dlw/**"/>
                                        <exclude name="org/apache/axis2/jaxws/proxy/gorilla_dlw/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/proxy/gorilla_dlw">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/gorilla_dlw.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/gorilla_dlw"
                                        />
                                <delete dir="target/test-classes/servicejars/gorilla_dlw"/>

                                <!-- ================================================================ -->
                                <!--- XML HTTP Tests -->
                                <!-- ================================================================ -->
                                <copy toDir="target/test-classes/servicejars/XPayloadStringProvider/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/xmlhttp/provider/payload/string/*.class"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/xmlhttp/provider/payload/string">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/XPayloadStringProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/XPayloadStringProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/XPayloadStringProvider"/>

                                <copy toDir="target/test-classes/servicejars/XMessageStringProvider/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/xmlhttp/provider/message/string/*.class"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/xmlhttp/provider/message/string">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/XMessageStringProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/XMessageStringProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/XMessageStringProvider"/>

                                <copy toDir="target/test-classes/servicejars/XPayloadSourceProvider/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/xmlhttp/provider/payload/source/*.class"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/xmlhttp/provider/payload/source">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/XPayloadSourceProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/XPayloadSourceProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/XPayloadSourceProvider"/>

                                <copy toDir="target/test-classes/servicejars/XMessageSourceProvider/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/xmlhttp/provider/message/source/*.class"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/xmlhttp/provider/message/source">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/XMessageSourceProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/XMessageSourceProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/XMessageSourceProvider"/>

                                <copy toDir="target/test-classes/servicejars/XMessageDataSourceProvider/">
                                    <fileset dir="target/test-classes">
                                        <include
                                                name="org/apache/axis2/jaxws/xmlhttp/provider/message/datasource/*.class"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/xmlhttp/provider/message/datasource">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/XMessageDataSourceProvider.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/XMessageDataSourceProvider"
                                        />
                                <delete dir="target/test-classes/servicejars/XMessageDataSourceProvider"/>

                                <!-- ================================================================ -->
                                <!--- Java Bean Endpoint Samples -->
                                <!-- ================================================================ -->
                                <copy toDir="target/test-classes/servicejars/AddressBookService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/addressbook/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/addressbook/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/addressbook">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/AddressBookService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AddressBookService"
                                        />
                                <delete dir="target/test-classes/servicejars/AddressBookService"/>

                                <copy toDir="target/test-classes/servicejars/MtomSampleService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/mtom/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/mtom/META-INF/services.xml"/>
                                    </fileset>

                                    <fileset dir="test/org/apache/axis2/jaxws/sample/mtom">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>

                                </copy>
                                <zip destfile="target/test-classes/servicejars/MtomSampleService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/MtomSampleService"
                                        />
                                <delete dir="target/test-classes/servicejars/MtomSampleService"/>
                                <copy toDir="target/test-classes/servicejars/DocLitNonWrapService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/nonwrap/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/nonwrap/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/nonwrap">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/DocLitNonWrapService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/DocLitNonWrapService"
                                        />
                                <delete dir="target/test-classes/servicejars/DocLitNonWrapService"/>
                                <copy toDir="target/test-classes/servicejars/DocLitWrapService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/wrap/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/wrap/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/wrap">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/DocLitWrapService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/DocLitWrapService"
                                        />
                                <delete dir="target/test-classes/servicejars/DocLitWrapService"/>
                                <copy toDir="target/test-classes/servicejars/AddNumbersService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/addnumbers/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/addnumbers/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/addnumbers">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/AddNumbersService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AddNumbersService"
                                        />
                                <delete dir="target/test-classes/servicejars/AddNumbersService"/>
                                <copy toDir="target/test-classes/servicejars/AddNumbersHandlerService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/addnumbershandler/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/addnumbershandler/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/addnumbershandler">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/AddNumbersHandlerService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AddNumbersHandlerService"
                                        />
                                <delete dir="target/test-classes/servicejars/AddNumbersHandlerService"/>
                                <copy toDir="target/test-classes/servicejars/GreeterService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/dlwmin/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/dlwmin/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/dlwmin">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/GreeterService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/GreeterService"
                                        />
                                <delete dir="target/test-classes/servicejars/GreeterService"/>

                                <copy toDir="target/test-classes/servicejars/AsyncService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/parallelasync/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/parallelasync/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/parallelasync/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/AsyncService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AsyncService"
                                        />
                                <delete dir="target/test-classes/servicejars/AsyncService"/>

                                <copy toDir="target/test-classes/servicejars/AsyncService2/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/asyncdoclit/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/asyncdoclit/server/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/asyncdoclit/server">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/AsyncService2.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AsyncService2"
                                        />
                                <delete dir="target/test-classes/servicejars/AsyncService2"/>

                                <copy toDir="target/test-classes/servicejars/FaultyWebServiceService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/faults/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/faults/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/faults">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/FaultyWebServiceService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/FaultyWebServiceService"
                                        />
                                <delete dir="target/test-classes/servicejars/FaultyWebServiceService"/>

                                <copy toDir="target/test-classes/servicejars/FaultsService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/faultsservice/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/faultsservice/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/faultsservice">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/FaultsService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/FaultsService"
                                        />
                                <delete dir="target/test-classes/servicejars/FaultsService"/>

                                <copy toDir="target/test-classes/servicejars/BareDocLitService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/doclitbare/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/doclitbare/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/doclitbare">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/BareDocLitService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/BareDocLitService"
                                        />
                                <delete dir="target/test-classes/servicejars/BareDocLitService"/>

                                <copy toDir="target/test-classes/servicejars/EchoMessageService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/nonanonymous/complextype/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/nonanonymous/complextype/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/nonanonymous/complextype">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/EchoMessageService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/EchoMessageService"
                                        />
                                <delete dir="target/test-classes/servicejars/EchoMessageService"/>

                                <copy toDir="target/test-classes/servicejars/ResourceInjectionService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/resourceinjection/**"/>
                                        <exclude name="org/apache/axis2/jaxws/sample/resourceinjection/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/resourceinjection">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/ResourceInjectionService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/ResourceInjectionService"
                                        />
                                <delete dir="target/test-classes/servicejars/ResourceInjectionService"/>

                                <copy toDir="target/test-classes/servicejars/AnyTypeMessageService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/anytype/**"/>
                                        <exclude name="org/apache/axis2/jaxws/anytype/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/anytype">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/AnyTypeMessageService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/AnyTypeMessageService"
                                        />
                                <delete dir="target/test-classes/servicejars/AnyTypeMessageService"/>

                                <copy toDir="target/test-classes/servicejars/MessageContextService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/context/**"/>
                                        <exclude name="org/apache/axis2/jaxws/context/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/context">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/MessageContextService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/MessageContextService"
                                        />
                                <delete dir="target/test-classes/servicejars/MessageContextService"/>

                                <copy toDir="target/test-classes/servicejars/PolymorphicShapeService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/polymorphic/shape/**"/>
                                        <exclude name="org/apache/axis2/jaxws/polymorphic/shape/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/polymorphic/shape">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/PolymorphicShapeService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/PolymorphicShapeService"
                                        />
                                <delete dir="target/test-classes/servicejars/PolymorphicShapeService"/>

                                <copy toDir="target/test-classes/servicejars/RPCLitEnumService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/rpclit/enumtype/**"/>
                                        <exclude name="org/apache/axis2/jaxws/rpclit/enumtype/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/rpclit/enumtype">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/RPCLitEnumService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/RPCLitEnumService"
                                        />
                                <delete dir="target/test-classes/servicejars/RPCLitEnumService"/>

                                <copy toDir="target/test-classes/servicejars/RPCLitStringArrayService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/rpclit/stringarray/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/rpclit/stringarray/META-INF/services.xml"/>
                                        <include name="org/test/rpclit/stringarray/**"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/rpclit/stringarray/">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/RPCLitStringArrayService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/RPCLitStringArrayService"
                                        />
                                <delete dir="target/test-classes/servicejars/RPCLitStringArrayService"/>


                                <copy toDir="target/test-classes/servicejars/BareDocLitMinService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/doclitbaremin/**"/>
                                        <exclude
                                                name="org/apache/axis2/jaxws/sample/doclitbaremin/META-INF/services.xml"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/doclitbaremin/">
                                        <include name="META-INF/**"/>
                                        <exclude name="META-INF/services.xml"/>
                                    </fileset>
                                </copy>

                                <zip destfile="target/test-classes/servicejars/BareDocLitMinService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/BareDocLitMinService"
                                        />
                                <delete dir="target/test-classes/servicejars/BareDocLitMinService"/>

                                <copy toDir="target/test-classes/servicejars/StringListService/">
                                    <fileset dir="target/test-classes">
                                        <include name="org/apache/axis2/jaxws/sample/stringlist/**"/>
                                    </fileset>
                                    <fileset dir="test/org/apache/axis2/jaxws/sample/stringlist/">
                                        <include name="META-INF/**"/>
                                    </fileset>
                                </copy>
                                <zip destfile="target/test-classes/servicejars/StringListService.jar"
                                     basedir="${pom.basedir}/target/test-classes/servicejars/StringListService"
                                        />
                                <delete dir="target/test-classes/servicejars/StringListService"/>

								<copy toDir="target/test-classes/servicejars/HandlerHeaderService/">
									<fileset dir="target/test-classes">
									   <include name="org/apache/axis2/jaxws/handler/header/**"/>
									</fileset>
									<fileset dir="test/org/apache/axis2/jaxws/handler/header">
									   <include name="META-INF/**"/>
									   <include name="handler.xml"/>									   
									</fileset>
									
								</copy>	
								<!-- We have to explicitly copy the xml file refered to by the client interface HandlerChain annotation -->
								<copy toDir="target/test-classes/">
									<fileset dir="test">
										<include name="org/apache/axis2/jaxws/handler/header/handler.xml"/>
									</fileset>
								</copy>
								
								<zip destfile="target/test-classes/servicejars/HandlerHeaderService.jar"
									basedir="${pom.basedir}/target/test-classes/servicejars/HandlerHeaderService"
								/>
								<delete dir="target/test-classes/servicejars/HandlerHeaderService"/>

                                <copy toDir="target/test-classes/">
                                    <fileset dir="test-resources/">
                                        <include name="**/*.properties"/>
                                        <include name="**/axis2.xml"/>
                                    </fileset>
                                </copy>
                            </tasks>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>add-test-source</id>
                        <phase>process-test-resources</phase>
                        <goals>
                            <goal>add-test-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>${basedir}/target/schema/src</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <inherited>true</inherited>
                <configuration>
                    <skip>false</skip>
                    <forkMode>pertest</forkMode>
                    <argLine>-Xms256m -Xmx512m</argLine>
                    <!-- Enable the next 2 lines if you want to attach a debugger
                    <argLine>-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5006</argLine>-->
                    <includes>
                        <include>**/MultiRedirectionCatalogTest.java</include>
                        <include>**/DispatchSoapActionTest.java</include>
                        <include>**/ProxySoapActionTest.java</include>
                        <include>**/DispatchMTOMFeatureTest.java</include>
                        <include>**/InvocationControllerTest.java</include>
                        <include>**/ProxyMTOMFeatureTest.java</include>
                        <include>**/SOAP12DispatchTest.java</include>
                        <include>**/JAXBContextTest.java</include>

                        <include>**/StringProviderTests.java</include>
                        <include>**/SOAPFaultProviderTests.java</include>
                        <include>**/StringMessageProviderTests.java</include>
                        <include>**/SourceProviderTests.java</include>
                        <include>**/SourceMessageProviderTests.java</include>
                        <include>**/SoapMessageMUProviderTests.java</include>
                        
                        <include>**/ProxyTests.java</include>
                        <include>**/ProxyNonWrappedTests.java</include>
                        <include>**/RPCProxyTests.java</include>
                        <include>**/RPCLitSWAProxyTests.java</include>

                        <include>**/GorillaDLWProxyTests.java</include>
                        <include>**/SOAP12ProxyTests.java</include>
                        <include>**/BasicAuthSecurityTests.java</include>
                        <include>**/AddressBookTests.java</include>
                        <include>**/MtomSampleTests.java</include>
                        <include>**/JAXBProviderTests.java</include>
                        <include>**/BareTests.java</include>
                        <include>**/AddNumbersHandlerTests.java</include>
                        <include>**/AddNumbersTests.java</include>
                        <include>**/DLWMinTests.java</include>
                        <include>**/FaultsServiceTests.java</include>
                        <include>**/WrapTests.java</include>
                        <include>**/SoapMessageProviderTests.java</include>
                        <include>**/WSGenTests.java</include>
                        <include>**/NonAnonymousComplexTypeTests.java</include>
                        <include>**/ResourceInjectionTests.java</include>
                        <include>**/AnyTypeTests.java</include>
                        <include>**/PolymorphicTests.java</include>

                        <include>**/DispatchXPayloadStringTests.java</include>
                        <include>**/DispatchXMessageStringTests.java</include>
                        <include>**/DispatchXPayloadSourceTests.java</include>
                        <include>**/DispatchXMessageSourceTests.java</include>
                        <include>**/DispatchXPayloadJAXBTests.java</include>
                        <include>**/DispatchXMessageDataSourceTests.java</include>
                        <include>**/RPCLitEnumTests.java</include>
                        <include>**/RPCLitStringArrayTests.java</include>

                        <include>**/StreamSourceDispatchTests.java</include>
                        <include>**/DOMSourceDispatchTests.java</include>
                        <include>**/SAXSourceDispatchTests.java</include>
                        <include>**/SOAPMessageDispatchTests.java</include>
                        <include>**/JAXBDispatchTests.java</include>
                        <include>**/JAXBSourceDispatchTests.java</include>
                        <include>**/StringDispatchTests.java</include>
                        <include>**/ParamTests.java</include>
                        <include>**/MessageContextTests.java</include>
                        <include>**/DocLitBareMinTests.java</include>
                        <include>**/MtomSampleByteArrayTests.java</include>
                        <include>**/HandlerTests.java</include>
                        <include>**/StringListTests.java</include>
                        <include>**/NonWrapTests.java</include>
                        <include>**/FaultyWebServiceTests.java</include> 
                        <include>**/ParallelAsyncTests.java</include>
                        <include>**/SWAMTOMTests.java</include>
                        <include>**/RuntimeExceptionsAsyncMepTest.java</include>
                        <include>**/AddressingProviderTests.java</include>
                    </includes>
                    <systemProperties>
                        <property>
                            <name>OASISCatalogManager.catalog.debug.level</name>
                            <value>0</value>
                        </property>
                        <property>
                            <name>build.repository</name>
                            <value>./target/test-classes</value>
                        </property>
                        <property>
                            <name>javax.xml.soap.MessageFactory</name>
                            <value>org.apache.axis2.saaj.MessageFactoryImpl</value>
                        </property>
                        <property>
                            <name>javax.xml.soap.SOAPFactory</name>
                            <value>org.apache.axis2.saaj.SOAPFactoryImpl</value>
                        </property>
                        <property>
                            <name>javax.xml.soap.SOAPConnectionFactory</name>
                            <value>org.apache.axis2.saaj.SOAPConnectionFactoryImpl</value>
                        </property>
                        <property>
                            <name>javax.xml.soap.MetaFactory</name>
                            <value>org.apache.axis2.saaj.SAAJMetaFactoryImpl</value>
                        </property>
                        <!-- Need this for the client side to pickup an axis2.xml to configure SoapMessageMUProviderChecker -->
                        <property>
                            <name>org.apache.axis2.jaxws.config.path</name>
                            <value>./target/test-classes/axis2.xml</value>
                        </property>
                        <!-- Need this for the client side to pickup the addressing mar -->
                        <property>
                            <name>org.apache.axis2.jaxws.repo.path</name>
                            <value>./target/client-repo</value>
                        </property>
                    </systemProperties>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-report-plugin</artifactId>
            </plugin>
        </plugins>
    </reporting>
</project>
