<?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.axis</groupId>
        <artifactId>axis-project</artifactId>
        <version>1.4.1-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <artifactId>integration</artifactId>
    <name>Axis :: Integration tests</name>
    <dependencies>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>axis-rt-core</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>axis-codegen</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>axis-testutils</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>addr-sample</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>echo-sample</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>${project.groupId}</groupId>
                <artifactId>java2wsdl-maven-plugin</artifactId>
                <version>${project.version}</version>
                <executions>
                    <execution>
                        <id>anytype</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/anytype/AnyService.wsdl</output>
                            <className>test.wsdl.anytype.org.AnyService</className>
                            <namespace>http://test.com/AnyService</namespace>
                            <location>http://localhost:8080/axis/services/AnyService</location>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.anytype.org</package>
                                    <namespace>http://test.com/AnyService</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>arrays3</id>
                        <goals>
                            <goal>deploy</goal>
                        </goals>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/arrays3/generated/arrays3.wsdl</output>
                            <className>test.wsdl.arrays3.AddrBookServiceImpl</className>
                            <namespace>http://arrays3.test</namespace>
                            <location>http://localhost:8080/axis/services/arrays3</location>
                            <style>WRAPPED</style>
                            <use>literal</use>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.arrays3</package>
                                    <namespace>http://arrays3.test</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>document</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/document/document.wsdl</output>
                            <className>test.wsdl.document.org.TestService</className>
                            <namespace>http://document.wsdl.test</namespace>
                            <location>http://localhost:8080/axis/services/DocumentTest</location>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.document.org</package>
                                    <namespace>http://document.wsdl.test</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>gateway</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/gateway/Gateway.wsdl</output>
                            <className>test.wsdl.gateway.org.Gateway</className>
                            <extraClasses>
                                <extraClass>test.wsdl.gateway.org.MyClass</extraClass>
                                <extraClass>test.wsdl.gateway.org.OutClass</extraClass>
                            </extraClasses>
                            <namespace>http://test.com/gateway</namespace>
                            <location>http://localhost:8080/axis/services/Gateway</location>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.gateway.org</package>
                                    <namespace>http://test.com/gateway</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>map</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/map/MapService.wsdl</output>
                            <className>test.wsdl.map.org.MapService</className>
                            <namespace>http://test.com/MapService</namespace>
                            <location>http://localhost:8080/axis/services/MapService</location>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.map.org</package>
                                    <namespace>http://test.com/MapService</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>query</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/query/QueryTest.wsdl</output>
                            <className>test.wsdl.query.org.QueryTest</className>
                            <style>wrapped</style>
                            <namespace>http://query.wsdl.test</namespace>
                            <location>http://localhost:8080/axis/services/QueryTest</location>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.query.org</package>
                                    <namespace>http://query.wsdl.test</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>webref</id>
                        <goals>
                            <goal>generate-wsdl</goal>
                        </goals>
                        <phase>process-classes</phase>
                        <configuration>
                            <output>${project.build.directory}/work/test/wsdl/webref/DoubleBackService.wsdl</output>
                            <className>test.wsdl.webref.DoubleBack</className>
                            <style>DOCUMENT</style>
                            <namespace>http://webref.wsdl.test/DoubleBack</namespace>
                            <location>http://localhost:8080/axis/services/DoubleBackService</location>
                            <portTypeName>DoubleBackPortType</portTypeName>
                            <mappings>
                                <mapping>
                                    <package>test.wsdl.webref</package>
                                    <namespace>http://webref.wsdl.test/DoubleBack</namespace>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>${project.groupId}</groupId>
                <artifactId>wsdl2java-maven-plugin</artifactId>
                <version>${project.version}</version>
                <configuration>
                    <testHttpPortSystemProperty>test.functional.ServicePort</testHttpPortSystemProperty>
                    <testDefaultHttpPort>8080</testDefaultHttpPort>
                </configuration>
                <executions>
                    <!-- Import Test 1:  some namespace->package mappings from the -->
                    <!--                 command line, some generated, some from   -->
                    <!--                 NStoPkg.properties.                       -->
                    <execution>
                        <id>_import-1</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/_import/Import.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <testCase>true</testCase>
                            <mappings>
                                <mapping>
                                    <namespace>urn:import</namespace>
                                    <package>test.wsdl.import</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:importBinding1</namespace>
                                    <package>test.wsdl.import.binding1</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:importBinding2</namespace>
                                    <package>test.wsdl.import.binding2</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/_import-1.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- Import Test 2:  all namespace->package mappings from the -->
                    <!--                 command line.                            -->
                    <execution>
                        <id>_import-2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/_import/Import.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <testCase>true</testCase>
                            <mappings>
                                <mapping>
                                    <namespace>urn:import</namespace>
                                    <package>test.import2</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:importBinding1</namespace>
                                    <package>test.import2.binding1</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:importBinding2</namespace>
                                    <package>test.import2.binding2</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:types.import.test</namespace>
                                    <package>test.import2.types</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:iface.import.test</namespace>
                                    <package>test.import2.iface</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:messages.import.test</namespace>
                                    <package>test.import2.messages</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/_import-2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- Import Test 3:  all namespace->package mappings from the -->
                    <!--                 command line.  Make sure an xsd:import   -->
                    <!--                 statement inside a schema inside a type  -->
                    <!--                 works properly.                          -->
                    <execution>
                        <id>_import-3</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/_import/ImportMessagesXSDImport.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:types.import.test</namespace>
                                    <package>test.import.test3</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <!-- This tests Bug 9642 -  Java Date not deserialize properly.  -->
                    <execution>
                        <id>adaptive</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/adaptive/adaptive.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://com.test/wsdl/Adaptive</namespace>
                                    <package>test.wsdl.adaptive</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://com.test/types/Adaptive</namespace>
                                    <package>test.wsdl.adaptive.types</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://java.sun.com/jax-rpc-ri/internal</namespace>
                                    <package>test.wsdl.adaptive.types.internal</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/adaptive.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>any</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/any/any.wsdl</file>
                            <all>true</all>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:partner.soap.sforce.com</namespace>
                                    <package>test.wsdl.any</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:sobject.partner.soap.sforce.com</namespace>
                                    <package>test.wsdl.any</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/any.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>anytype</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/anytype/AnyService.wsdl</file>
                            <all>true</all>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://test.com/AnyService</namespace>
                                    <package>test.wsdl.anytype</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/anytype.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>arrays</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/arrays/ArrayTest.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:ArrayTest2</namespace>
                                    <package>test.wsdl.arrays</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/arrays.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>arrays2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/arrays2/arraytest.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://www.xyz.net/webservices/arraytest/1.0</namespace>
                                    <package>test.wsdl.arrays2</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://www.xyz.net/schemas/arraytest/data/1.0</namespace>
                                    <package>test.wsdl.arrays2.data</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://www.xyz.net/schemas/arraytest/innerdata/1.0</namespace>
                                    <package>test.wsdl.arrays2.data.inner</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>arrays3</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/arrays3/generated/arrays3.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://arrays3.test</namespace>
                                    <package>test.wsdl.arrays3.testclient</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>arrays4</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/arrays4/ArrayTest.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:ArrayTest4</namespace>
                                    <package>test.wsdl.arrays4</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/arrays4.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>attachments</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/attachments/mime.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <deployWsdd>${project.build.directory}/wsdd/attachments.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>attrGroup</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/attrGroup/AttrGroupService.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.attrGroup</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>axis2098</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/axis2098/helloworld.wsdl</file>
                            <generate>client</generate>
                            <all>true</all>
                            <mappings>
                                <mapping>
                                    <namespace>http://helloworld.ch/schema/service</namespace>
                                    <package>test.wsdl.axis2098</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://helloworld.ch/schema/types</namespace>
                                    <package>test.wsdl.axis2098</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>choice</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/choice/ChoiceService.wsdl</file>
                            <generate>client</generate>
                            <noWrapped>true</noWrapped>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.choice</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <!-- This is a DII test with multiple output params -->
                    <execution>
                        <id>dataset</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/dataset/DataService.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.dataset</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <!-- DataType Structure Test -->
                    <execution>
                        <id>datatypes</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/datatypes/DataTypes.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <wrapArrays>true</wrapArrays>
                            <mappings>
                                <mapping>
                                    <namespace>urn:dataTypes</namespace>
                                    <package>test.wsdl.datatypes</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/datatypes.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests Bug 9642 -  Java Date not deserialize properly.  -->
                    <execution>
                        <id>date</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/date/testdate.wsdl</file>
                            <generate>both</generate>
                            <deployWsdd>${project.build.directory}/wsdd/date.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>document</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/document/document.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://document.wsdl.test</namespace>
                                    <package>test.wsdl.document</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/document.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests holders for complextype Bug:10247 -->
                    <execution>
                        <id>echo</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/echo/echo.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://echo.services</namespace>
                                    <package>test.wsdl.echo</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://types.echo.services</namespace>
                                    <package>test.wsdl.echo</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/echo.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>echo2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/echo2/echo2.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:echo2.wsdl.test</namespace>
                                    <package>test.wsdl.echo2</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/echo2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>esr</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/esr/esr.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <helperGen>true</helperGen>
                            <deployWsdd>${project.build.directory}/wsdd/esr.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- extension Sample Test -->
                    <execution>
                        <id>extension</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/extension/extension.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.extension</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/extension.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- WSDL fault generation test -->
                    <execution>
                        <id>faults</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/faults/FaultService.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://test.com/wsdl/faults</namespace>
                                    <package>test.wsdl.faults</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/faults.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>gateway</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/gateway/Gateway.wsdl</file>
                            <generate>both</generate>
                            <all>true</all>
                            <mappings>
                                <mapping>
                                    <namespace>http://test.com/gateway</namespace>
                                    <package>test.wsdl.gateway</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/gateway.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests the getPort method in generated services.  -->
                    <execution>
                        <id>getPort</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/getPort/getPort.wsdl</file>
                            <generate>both</generate>
                            <implementation>true</implementation>
                            <deployWsdd>${project.build.directory}/wsdd/getPort.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>header</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/header/header.wsdl</file>
                            <deployScope>none</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <deployWsdd>${project.build.directory}/wsdd/header.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- Include test -->
                    <execution>
                        <id>include</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/include/AddressBook.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <testCase>true</testCase>
                            <mappings>
                                <mapping>
                                    <namespace>urn:AddressFetcher2</namespace>
                                    <package>test.wsdl.include</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/include.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>inout</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/inout/inout.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>http://www.apache.org/inout</namespace>
                                    <package>test.wsdl.inout</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/inout.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>jaxrpcdynproxy</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/jaxrpcdynproxy/AddressInOut.wsdl</file>
                            <generate>server</generate>
                            <deployWsdd>${project.build.directory}/wsdd/jaxrpcdynproxy.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>map</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/map/MapService.wsdl</file>
                            <all>true</all>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://test.com/MapService</namespace>
                                    <package>test.wsdl.map</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/map.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>marrays</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/marrays/MArrayTest.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:MArrayTests</namespace>
                                    <package>test.wsdl.marrays</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/marrays.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>marshall</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/marshall/marshall.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <typeMappingVersion>1.3</typeMappingVersion>
                            <deployWsdd>${project.build.directory}/wsdd/marshall.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>marshall2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/marshall2/marshall2.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <typeMappingVersion>1.3</typeMappingVersion>
                            <wrapArrays>true</wrapArrays>
                            <deployWsdd>${project.build.directory}/wsdd/marshall2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>multiref</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/multiref/MultiRefTest.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:MultiRefTest2</namespace>
                                    <package>test.wsdl.multiref</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/multiref.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- Check to make sure we map XML names that are illegal Java correctly -->
                    <execution>
                        <id>names</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/names/JavaNames.wsdl</file>
                            <generate>both</generate>
                            <implementation>true</implementation>
                            <testCase>true</testCase>
                            <mappings>
                                <mapping>
                                    <namespace>http://test.com/reference</namespace>
                                    <package>test.filegen</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/names.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- Nested Structure Test -->
                    <execution>
                        <id>nested</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/nested/Nested.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:Nested</namespace>
                                    <package>test.wsdl.nested</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/nested.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>omit</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/omit/omit.wsdl</file>
                            <generate>both</generate>
                            <deployWsdd>${project.build.directory}/wsdd/omit.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>oneway</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/oneway/oneway.wsdl</file>
                            <generate>both</generate>
                            <implementationClassName>test.wsdl.oneway.OnewayImpl</implementationClassName>
                            <deployWsdd>${project.build.directory}/wsdd/oneway.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests parameterOrder.  -->
                    <execution>
                        <id>parameterOrder</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/parameterOrder/parameterOrder.wsdl</file>
                            <generate>both</generate>
                            <deployWsdd>${project.build.directory}/wsdd/parameterOrder.wsdd</deployWsdd>
                            <testCase>true</testCase>
                            <implementation>true</implementation>
                        </configuration>
                    </execution>
                    <execution>
                        <id>qnameser</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/qnameser/extension.wsdl</file>
                            <generate>client</generate>
                            <noWrapped>true</noWrapped>
                            <wrapArrays>true</wrapArrays>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.qnameser</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <!-- This tests polymorphism of return values -->
                    <execution>
                        <id>polymorphism</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/polymorphism/polymorphism.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://xml.apache.org/axis/PolymorphismTest</namespace>
                                    <package>test.wsdl.polymorphism</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/polymorphism.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>primitiveWrappers</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/primitiveWrappers/primitiveWrappers.wsdl</file>
                            <generate>both</generate>
                            <deployWsdd>${project.build.directory}/wsdd/primitiveWrappers.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests element qualification.  -->
                    <execution>
                        <id>qualify</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/qualify/qualifytest.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:qualifyTest</namespace>
                                    <package>test.wsdl.qualify</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/qualify.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- test for qualified or unqualified attributes -->
                    <execution>
                        <id>qualify2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/qualify2/attribute-qualify.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:attributeQualify</namespace>
                                    <package>test.wsdl.qualify2</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/qualify2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>query</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/query/QueryTest.wsdl</file>
                            <generate>both</generate>
                            <deployScope>session</deployScope>
                            <!-- Test has static WSDD; don't generate deploy.wsdd -->
                        </configuration>
                    </execution>
                    <execution>
                        <id>ram</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/ram/ram.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:ram</namespace>
                                    <package>test.wsdl.ram</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://ram.uspto.gov</namespace>
                                    <package>test.wsdl.ram</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/ram.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>refattr</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/refattr/refattr.wsdl</file>
                            <generate>both</generate>
                            <deployScope>session</deployScope>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <deployWsdd>${project.build.directory}/wsdd/refattr.wsdl</deployWsdd>
                            <mappings>
                                <mapping>
                                    <namespace>urn:ref.types.test</namespace>
                                    <package>test.wsdl.refattr</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:ref.types</namespace>
                                    <package>test.wsdl.refattr</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>rpcParams</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/rpcParams/rpcParams.wsdl</file>
                            <generate>server</generate>
                            <!-- Don't generate deploy.wsdd; we supply our own -->
                        </configuration>
                    </execution>
                    <execution>
                        <id>schema2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/schema2/schema2.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <typeMappingVersion>1.3</typeMappingVersion>
                            <mappings>
                                <mapping>
                                    <namespace>urn:CityBBB</namespace>
                                    <package>test.wsdl.schema2</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/schema2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>sequence</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/sequence/SequenceTest.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:SequenceTest2</namespace>
                                    <package>test.wsdl.sequence</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>session</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/session/session.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <deployWsdd>${project.build.directory}/wsdd/session.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This tests holders for complextype Bug:10247 -->
                    <execution>
                        <id>stubheaders</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/stubheaders/stubheaders.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://echo.services</namespace>
                                    <package>test.wsdl.stubheaders</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/stubheaders.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <!-- This is (OK, "will be") a comprehensive test of XML schema types -->
                    <execution>
                        <id>types</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/types/ComprehensiveTypes.wsdl</file>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <helperGen>true</helperGen>
                            <implementation>true</implementation>
                            <deployWsdd>${project.build.directory}/wsdd/types.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>union</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/union/UnionService.wsdl</file>
                            <generate>client</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.union</package>
                                </mapping>
                            </mappings>
                        </configuration>
                    </execution>
                    <execution>
                        <id>webref</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/work/test/wsdl/webref/DoubleBackService.wsdl</file>
                            <generate>both</generate>
                            <all>true</all>
                            <implementationClassName>test.wsdl.webref.DoubleBack</implementationClassName>
                            <mappings>
                                <mapping>
                                    <namespace>http://webref.wsdl.test/DoubleBack</namespace>
                                    <package>test.wsdl.webref</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/webref.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapped</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapped/CityBBB.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>urn:CityBBB</namespace>
                                    <package>test.wsdl.wrapped</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapped.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapped2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapped2/employee.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <mappings>
                                <mapping>
                                    <namespace>http://www.sun.com/JSR172UseCases</namespace>
                                    <package>test.wsdl.wrapped2</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://www.sun.com/JSR172AppendixA.xsd</namespace>
                                    <package>test.wsdl.wrapped2.xsd</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapped2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapped_choice</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapped_choice/reportservice.wsdl</file>
                            <deployScope>session</deployScope>
                            <generate>both</generate>
                            <skeleton>true</skeleton>
                            <implementation>true</implementation>
                            <testCase>true</testCase>
                            <mappings>
                                <mapping>
                                    <namespace>http://schemas.microsoft.com/sqlserver/2003/12/reporting/reportingservices</namespace>
                                    <package>test.wsdl.wrapped_choice</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapped_choice.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapped_holders</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapped_holders/thing.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:Thing</namespace>
                                    <package>test.wsdl.wrapped_holders</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapped_holders.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapped_inout</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapped_inout/wrapped_inout.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>http://tempuri.org/</namespace>
                                    <package>test.wsdl.wrapped_inout</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapped_inout.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapperHolder</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapperHolder/bug1191.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:wrapperHolder</namespace>
                                    <package>test.wsdl.wrapperHolder</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapperHolder.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>wrapperHolder2</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/wrapperHolder2/bug2102.wsdl</file>
                            <generate>both</generate>
                            <mappings>
                                <mapping>
                                    <namespace>urn:wrapperHolder2</namespace>
                                    <package>test.wsdl.wrapperHolder2</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/wrapperHolder2.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                    <execution>
                        <id>xsd</id>
                        <goals>
                            <goal>generate-test-sources</goal>
                        </goals>
                        <configuration>
                            <file>src/test/wsdl/xsd/good.wsdl</file>
                            <generate>both</generate>
                            <implementation>true</implementation>
                            <mappings>
                                <mapping>
                                    <namespace>http://snv882:10217/gateway/services/CPWebServices</namespace>
                                    <package>test.wsdl.xsd</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://datatypes.cs.amdocs.com</namespace>
                                    <package>test.wsdl.xsd.data</package>
                                </mapping>
                                <mapping>
                                    <namespace>http://messages.common.api.cs.amdocs.com</namespace>
                                    <package>test.wsdl.xsd.messages</package>
                                </mapping>
                                <mapping>
                                    <namespace>urn:CPWSImpl</namespace>
                                    <package>test.wsdl.xsd.impl</package>
                                </mapping>
                            </mappings>
                            <deployWsdd>${project.build.directory}/wsdd/xsd.wsdd</deployWsdd>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>${project.groupId}</groupId>
                                    <artifactId>addr-sample</artifactId>
                                    <version>${project.version}</version>
                                    <type>wsdd</type>
                                    <classifier>deploy</classifier>
                                    <outputDirectory>${project.build.directory}/wsdd</outputDirectory>
                                    <destFileName>addr.wsdd</destFileName>
                                </artifactItem>
                            </artifactItems>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>reserve-network-port</id>
                        <goals>
                            <goal>reserve-network-port</goal>
                        </goals>
                        <phase>pre-integration-test</phase>
                        <configuration>
                            <portNames>
                                <portName>test.functional.ServicePort</portName>
                            </portNames>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>${project.groupId}</groupId>
                <artifactId>axis-server-maven-plugin</artifactId>
                <version>${project.version}</version>
                <executions>
                    <execution>
                        <id>start-server</id>
                        <goals>
                            <goal>start-server</goal>
                        </goals>
                        <configuration>
                            <port>${test.functional.ServicePort}</port>
                            <foregroundPort>8080</foregroundPort>
                            <wsdds>
                                <wsdd>
                                    <directory>src/test/wsdd</directory>
                                    <includes>
                                        <include>**/deploy.wsdd</include>
                                        <include>**/server-deploy.wsdd</include>
                                    </includes>
                                </wsdd>
                                <wsdd>
                                    <directory>${project.build.directory}/wsdd</directory>
                                </wsdd>
                                <!-- TODO: we need to fix the deploy goal so that we can specify the output location for the WSDD files -->
                                <wsdd>
                                    <directory>${project.build.directory}/generated-sources/deploy</directory>
                                    <includes>
                                        <include>**/deploy.wsdd</include>
                                    </includes>
                                </wsdd>
                            </wsdds>
                            <jwsDirs>
                                <jwsDir>../axis-war/src/main/webapp</jwsDir>
                                <jwsDir>src/test/jws</jwsDir>
                            </jwsDirs>
                        </configuration>
                    </execution>
                    <execution>
                        <id>stop-server</id>
                        <goals>
                            <goal>stop-all</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <id>generate-sources</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <target>
                                <!-- TODO: quick and dirty hack to be able to compile all tests -->
                                <mkdir dir="${project.build.directory}/generated-test-sources/wsdl2java/samples/client"/>
                                <copy file="../distribution/src/main/files/samples/client/DynamicInvoker.java" todir="${project.build.directory}/generated-test-sources/wsdl2java/samples/client"/>
                            </target>
                        </configuration>
                    </execution>
                    <execution>
                        <id>process-test-sources</id>
                        <phase>process-test-sources</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <target>
                                <!-- The schema2 test replaces a generated bean by a simple JavaBean. Remove the generated class. -->
                                <delete file="${project.build.directory}/generated-test-sources/wsdl2java/test/wsdl/schema2/Document.java"/>
                            </target>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <executions>
                    <execution>
                        <id>default-test</id>
                        <configuration>
                            <skip>true</skip>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-failsafe-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                        <configuration>
                            <includes>
                                <include>**/Test*.java</include>
                                <include>**/*Test.java</include>
                                <include>**/*TestCase.java</include>
                                <!-- TODO: test doesn't follow standard naming convention -->
                                <include>test/dynamic/ServiceGetPort.java</include>
                            </includes>
                            <excludes>
                                <!-- Quote:
                                    // FIX BUILD 05/27/03 : "junit" tests should NOT be accessing the
                                    // network at all - these tests should move to test.wsdl.dynamic
                                    // and should not reference services which might go down. ~~gdaniels
                                -->
                                <exclude>test/dynamic/TestDynamicInvoker.java</exclude>
                                <exclude>test/dynamic/TestJAXRPCDII.java</exclude>
                                <!-- Excluded in r257238; see AXIS-750 -->
                                <exclude>test/wsdl/adaptive/**</exclude>
                                <!-- Excluded in r261718; see AXIS-2107 -->
                                <exclude>test/wsdl/query/FileGenWrappedTestCase.java</exclude>
                                <!-- TODO: remote service no longer available -->
                                <exclude>test/wsdl/dataset/**</exclude>
                                <!-- TODO: this causes problems in subsequent tests because auto types modify a shared TypeMapping -->
                                <exclude>test/functional/TestAutoTypes.java</exclude>
                                <!-- TODO: fails on Java 1.6 because of AXIS-2876 -->
                                <exclude>test/wsdl/echo/ComplexEchoServiceTestCase.java</exclude>
                                <!-- TODO: deserialization fails on server side (note: the test was not enabled in Axis 1.4 either) -->
                                <exclude>test/wsdl/refattr/RefTestServiceTestCase.java</exclude>
                                <!-- These are not test cases -->
                                <exclude>test/wsdl/date/TestdateSoapBinding*</exclude>
                                <exclude>test/wsdl/inout/TestFailed.java</exclude>
                                <exclude>test/wsdl/marshall2/types/**</exclude>
                            </excludes>
                            <systemPropertyVariables>
                                <java.awt.headless>true</java.awt.headless>
                                <test.functional.ServicePort>${test.functional.ServicePort}</test.functional.ServicePort>
                            </systemPropertyVariables>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-deploy-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-site-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                    <skipDeploy>true</skipDeploy>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
