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

    Copyright (c) 2019, 2022 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0 which is available at
    http://www.eclipse.org/legal/epl-2.0,
    or the Eclipse Distribution License v. 1.0 which is available at
    http://www.eclipse.org/org/documents/edl-v10.php.

    SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause

-->

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
         xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>

    <name>EclipseLink JPA Test</name>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>org.eclipse.persistence.jpa.test</artifactId>
    <packaging>jar</packaging>

    <parent>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>org.eclipse.persistence.test.server.parent</artifactId>
        <version>4.0.0-SNAPSHOT</version>
        <relativePath>../../testing/server/pom.xml</relativePath>
    </parent>

    <properties>
        <!--Properties used for test resources filtering/replacement-->
        <!--DB connection properties-->
        <dbPlatform>${db.platform}</dbPlatform>
        <dbUser>${db.user}</dbUser>
        <dbPassword>${db.pwd}</dbPassword>
        <driverClass>${db.driver}</driverClass>
        <dbURL>${db.url}</dbURL>
        <!--Log level-->
        <loglevel>${logging.level}</loglevel>

        <wave.file.prefix>woven-</wave.file.prefix>

        <skip-test-jpa-srg>${skipTests}</skip-test-jpa-srg>
        <skip-test-jpa-lrg21>true</skip-test-jpa-lrg21>
        <skip-test-jpa-lrg22>true</skip-test-jpa-lrg22>
        <skip-test-jpa-dynamic>true</skip-test-jpa-dynamic>
        <skip-test-jpa-identity>true</skip-test-jpa-identity>
        <skip-test-jpa-no-weave>true</skip-test-jpa-no-weave>
        <skip-test-jpa-static-weave>true</skip-test-jpa-static-weave>

        <skip-server-test-jpa>true</skip-server-test-jpa>
        <skip-server-test-jpa-lrg1>true</skip-server-test-jpa-lrg1>
        <skip-server-test-jpa-lrg2>true</skip-server-test-jpa-lrg2>
        <skip-jpa-jse-build>false</skip-jpa-jse-build>
        <skip-derby>false</skip-derby>

        <!--Properties used for test resources filtering/replacement.
            Default settings could be overriden by server-test-jpa* profile.-->
        <puName>default</puName>
        <server.factory>${server.initialCtxFactory}</server.factory>
        <server.user>${server.usr}</server.user>
        <server-platform>${server.platform}</server-platform>
        <server-platform-class>${server.platform.class}</server-platform-class>
        <transaction-type>JTA</transaction-type>
        <datasource-type>jta-data-source</datasource-type>
        <data-source-name>jdbc/EclipseLinkDS</data-source-name>
        <data-source-name-non-jta>jdbc/ELNonJTADS</data-source-name-non-jta>
        <session-data-source-name>${data-source-name}</session-data-source-name>
        <database-platform>${db.platform}</database-platform>
        <server-weaving>true</server-weaving>
        <server.testrunner.prefix>${modelname}/${modelname}_ejb/</server.testrunner.prefix>
    </properties>

    <dependencies>
        <!--Test dependencies-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
        <!--Required for JPA server test server-test-jpa21-sessionbean.-->
        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-core</artifactId>
        </dependency>
        <!--Other modules-->
        <dependency>
            <groupId>jakarta.persistence</groupId>
            <artifactId>jakarta.persistence-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.jpa.modelgen.processor</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.moxy</artifactId>
            <scope>test</scope>
        </dependency>
        <!--EclipseLink Core test framework-->
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.core.test.framework</artifactId>
            <scope>test</scope>
        </dependency>
        <!--EclipseLink JPA test framework-->
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.jpa.test.framework</artifactId>
            <scope>test</scope>
        </dependency>
        <!--EclipseLink Core test classes-->
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>org.eclipse.persistence.core.test</artifactId>
            <type>test-jar</type>
            <scope>test</scope>
        </dependency>
        <!--API dependecies-->
        <dependency>
            <groupId>jakarta.ejb</groupId>
            <artifactId>jakarta.ejb-api</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>jakarta.enterprise</groupId>
            <artifactId>jakarta.enterprise.cdi-api</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>jakarta.validation</groupId>
            <artifactId>jakarta.validation-api</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>jakarta.xml.bind</groupId>
            <artifactId>jakarta.xml.bind-api</artifactId>
            <scope>test</scope>
        </dependency>
        <!--Other libraries-->
        <dependency>
            <groupId>org.glassfish.corba</groupId>
            <artifactId>glassfish-corba-omgapi</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish.corba</groupId>
            <artifactId>glassfish-corba-orb</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.eclipse.parsson</groupId>
            <artifactId>parsson</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-xjc</artifactId>
            <scope>test</scope>
        </dependency>
        <!--JDBC driver (test dependency)-->
        <dependency>
            <groupId>${db.driver.groupId}</groupId>
            <artifactId>${db.driver.artifactId}</artifactId>
            <version>${db.driver.version}</version>
            <scope>test</scope>
        </dependency>
        <!--JEE thin client (EJB Client) library.-->
        <dependency>
            <groupId>${jee.client.groupId}</groupId>
            <artifactId>${jee.client.artifactId}</artifactId>
            <version>${jee.client.version}</version>
            <type>${jee.client.type}</type>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <!--Filtering enables generate/substitute test properties from Maven into *.xml files.-->
        <testResources>
            <testResource>
                <directory>${integration.test.resources.directory}</directory>
                <filtering>true</filtering>
            </testResource>
        </testResources>

        <plugins>
            <!--Required for EL Weaving (-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar})-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <!--Resolve dependencies into Maven properties like ${org.eclipse.persistence:org.eclipse.persistence.jpa:jar} for JPA module-->
                    <execution>
                        <id>get-test-classpath-to-properties</id>
                        <goals>
                            <goal>properties</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>add-generated-test-sources-dir</id>
                        <phase>generate-test-sources</phase>
                        <goals>
                            <goal>add-test-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>${project.build.directory}/generated-test-sources/jpa-runner-src</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <!--Required due filtering applied to org.eclipse.persistence.testing.framework.server.TestRunnerBean java class.-->
            <plugin>
                <groupId>com.google.code.maven-replacer-plugin</groupId>
                <artifactId>replacer</artifactId>
                <executions>
                    <execution>
                        <id>filter-test-src-TestRunnerBean</id>
                        <phase>generate-test-sources</phase>
                        <goals>
                            <goal>replace</goal>
                        </goals>
                        <configuration>
                            <file>${project.basedir}/${integration.test.directory}/java-templates/org/eclipse/persistence/testing/framework/server/TestRunnerBean.java</file>
                            <outputFile>${project.build.directory}/generated-test-sources/jpa-runner-src/org/eclipse/persistence/testing/framework/server/TestRunnerBean.java</outputFile>
                            <replacements>
                                <replacement>
                                    <token>@puName@</token>
                                    <value>${puName}</value>
                                </replacement>
                            </replacements>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <!--Generate some classes required for test by EclipseLink Canonical Model Processor.
                Adds to the compiler (test scope) sources root path: .../target/generated-test-sources -->
            <plugin>
                <groupId>org.bsc.maven</groupId>
                <artifactId>maven-processor-plugin</artifactId>
                <configuration>
                    <processors>
                        <processor>org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor</processor>
                    </processors>
                    <sourceDirectory>${project.basedir}/${integration.test.sources.directory}</sourceDirectory>
                </configuration>
                <executions>
                    <execution>
                        <id>generate-canonical-meta-model-classes</id>
                        <goals>
                            <goal>process-test</goal>
                        </goals>
                        <phase>generate-test-sources</phase>
                        <configuration>
                            <outputDirectory>${project.build.directory}/generated-test-sources/canonical-meta-model-src</outputDirectory>
                            <compilerArguments>-Aeclipselink.persistencexml=${project.basedir}/${integration.test.resources.directory}/eclipselink-canonical-meta-model/persistence.xml
                            </compilerArguments>
                            <includes>
                                <include>org/eclipse/persistence/testing/models/jpa/advanced/*.java</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>generate-inheritance-model-classes</id>
                        <goals>
                            <goal>process-test</goal>
                        </goals>
                        <phase>generate-test-sources</phase>
                        <configuration>
                            <outputDirectory>${project.build.directory}/generated-test-sources/inheritance-model-src</outputDirectory>
                            <compilerArguments>-Aeclipselink.persistencexml=${project.basedir}/${integration.test.resources.directory}/eclipselink-inheritance-model/persistence.xml</compilerArguments>
                            <includes>
                                <include>org/eclipse/persistence/testing/models/jpa/inheritance/*.java</include>
                                <include>org/eclipse/persistence/testing/models/jpa/inheritance/listeners/*.java</include>
                                <include>org/eclipse/persistence/testing/models/jpa/inherited/*.java</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>generate-jpa-metamodel-classes</id>
                        <goals>
                            <goal>process-test</goal>
                        </goals>
                        <phase>generate-test-sources</phase>
                        <configuration>
                            <outputDirectory>${project.build.directory}/generated-test-sources/jpa-metamodel-src</outputDirectory>
                            <compilerArguments>-Aeclipselink.persistencexml=${project.basedir}/${integration.test.resources.directory}/eclipselink-metamodel-model/persistence.xml</compilerArguments>
                            <includes>
                                <include>org/eclipse/persistence/testing/models/jpa/metamodel/*.java</include>
                            </includes>
                        </configuration>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.eclipse.persistence</groupId>
                        <artifactId>org.eclipse.persistence.jpa.modelgen.processor</artifactId>
                        <version>${project.version}</version>
                    </dependency>
                </dependencies>
            </plugin>
            <!--Generate multiple jar files required for tests.-->
            <plugin>
                <groupId>com.soebes.maven.plugins</groupId>
                <artifactId>iterator-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>pack-model</id>
                        <phase>process-test-classes</phase>
                        <goals>
                            <goal>iterator</goal>
                        </goals>
                        <configuration>
                            <skip>${skip-jpa-jse-build}</skip>
                            <items>
                                <item>eclipselink-annotation-model</item>
                                <item>eclipselink-xml-only-model</item>
                                <item>eclipselink-advanced-properties</item>
                                <item>eclipselink-pu with spaces</item>
                                <item>eclipselink-validation-failed-model</item>
                                <item>eclipselink-xml-merge-model</item>
                                <item>eclipselink-advanced-field-access-model</item>
                                <item>eclipselink-cascade-deletes-model</item>
                                <item>eclipselink-cacheable-model</item>
                                <item>eclipselink-ddl-generation-model</item>
                                <item>eclipselink-delimited-model</item>
                                <item>eclipselink-extensibility-model</item>
                                <item>eclipselink-composite-advanced-model</item>
                                <item>eclipselink-composite-advanced-model-member_1</item>
                                <item>eclipselink-composite-advanced-model-member_2</item>
                                <item>eclipselink-composite-advanced-model-member_3</item>
                                <item>eclipselink-jpa21-model</item>
                                <item>eclipselink-metamodel-model</item>
                                <item>eclipselink-partitioned-model</item>
                                <item>eclipselink-xml-composite-advanced-model</item>
                                <item>eclipselink-xml-composite-advanced-model-member_1</item>
                                <item>eclipselink-xml-composite-advanced-model-member_2</item>
                                <item>eclipselink-xml-composite-advanced-model-member_3</item>
                                <item>eclipselink-xml-mapping-metadata-complete</item>
                                <!--Additional for LRG-->
                                <item>eclipselink-plsql-model</item>
                                <item>eclipselink-remote</item>
                                <item>jpa-performance</item>
                                <item>jpa-performance2</item>
                                <item>eclipselink-beanvalidation-model</item>
                                <item>eclipselink-beanvalidation-dynamic-model</item>
                                <item>eclipselink-identity-model</item>
                                <item>eclipselink-jpa22-model</item>
                                <item>eclipselink-xml-extended-composite-advanced-model</item>
                                <item>eclipselink-xml-extended-composite-advanced-model-member_1</item>
                                <item>eclipselink-xml-extended-composite-advanced-model-member_2</item>
                                <item>eclipselink-xml-extended-composite-advanced-model-member_3</item>
                                <item>eclipselink-xml-extended-model</item>
                            </items>
                            <pluginExecutors>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-assembly-plugin</artifactId>
                                    </plugin>
                                    <goal>single</goal>
                                    <configuration>
                                        <descriptors>
                                            <descriptor>${project.basedir}/${integration.test.directory}/assembly/assembly-model.xml</descriptor>
                                        </descriptors>
                                        <finalName>${item}</finalName>
                                        <appendAssemblyId>false</appendAssemblyId>
                                    </configuration>
                                </pluginExecutor>
                            </pluginExecutors>
                        </configuration>
                    </execution>
                    <!--Iterator is used there due reuse current assembly/component descriptors property ${item} is used there.-->
                    <execution>
                        <id>pack-server</id>
                        <phase>process-test-classes</phase>
                        <goals>
                            <goal>iterator</goal>
                        </goals>
                        <configuration>
                            <skip>${skip-server-test-jpa}</skip>
                            <itemsWithProperties>
                                <itemsWithProperty>
                                    <name>${modelname}</name>
                                    <properties>
                                        <default>${puName}</default>
                                        <item.extra-model>${extra-model}</item.extra-model>
                                    </properties>
                                </itemsWithProperty>
                            </itemsWithProperties>
                            <pluginExecutors>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-assembly-plugin</artifactId>
                                    </plugin>
                                    <goal>single</goal>
                                    <configuration>
                                        <descriptors>
                                            <descriptor>${project.basedir}/${integration.test.directory}/assembly/assembly-ejb.xml</descriptor>
                                        </descriptors>
                                        <finalName>${item}_ejb</finalName>
                                        <appendAssemblyId>false</appendAssemblyId>
                                    </configuration>
                                </pluginExecutor>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-assembly-plugin</artifactId>
                                    </plugin>
                                    <goal>single</goal>
                                    <configuration>
                                        <descriptors>
                                            <descriptor>${project.basedir}/${integration.test.directory}/assembly/assembly-client.xml</descriptor>
                                        </descriptors>
                                        <finalName>${item}_client</finalName>
                                        <appendAssemblyId>false</appendAssemblyId>
                                    </configuration>
                                </pluginExecutor>
                                <!--Apply filtering to the application.xml file.-->
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-resources-plugin</artifactId>
                                    </plugin>
                                    <goal>copy-resources</goal>
                                    <configuration>
                                        <outputDirectory>${project.build.testOutputDirectory}/server.tmp</outputDirectory>
                                        <resources>
                                            <resource>
                                                <directory>${project.build.testOutputDirectory}/server</directory>
                                                <includes>
                                                    <include>application.xml</include>
                                                </includes>
                                                <filtering>true</filtering>
                                            </resource>
                                        </resources>
                                    </configuration>
                                </pluginExecutor>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-assembly-plugin</artifactId>
                                    </plugin>
                                    <goal>single</goal>
                                    <configuration>
                                        <descriptors>
                                            <descriptor>${project.basedir}/${integration.test.directory}/assembly/assembly-ear.xml</descriptor>
                                        </descriptors>
                                        <finalName>${item}</finalName>
                                        <appendAssemblyId>false</appendAssemblyId>
                                        <archiverConfig>
                                            <!--Filtering is not available there. It's handled by maven-resources-plugin in previous pluginExecutor-->
                                            <appxml>${project.build.testOutputDirectory}/server.tmp/application.xml</appxml>
                                        </archiverConfig>
                                    </configuration>
                                </pluginExecutor>
                            </pluginExecutors>
                        </configuration>
                    </execution>
                    <!--Static Weaving (source contains persistence.xml). It's based on exec-maven-plugin instead of staticweave-maven-plugin due some limitations.-->
                    <execution>
                        <id>weave-model-static</id>
                        <phase>process-test-classes</phase>
                        <goals>
                            <goal>iterator</goal>
                        </goals>
                        <configuration>
                            <skip>${skip-jpa-jse-build}</skip>
                            <items>
                                <item>eclipselink-annotation-model</item>
                                <item>eclipselink-ddl-generation-model</item>
                                <item>eclipselink-validation-failed-model</item>
                                <item>eclipselink-cacheable-model</item>
                                <item>eclipselink-advanced-properties</item>
                                <item>eclipselink-pu with spaces</item>
                                <item>eclipselink-partitioned-model</item>
                                <item>eclipselink-plsql-model</item>
                                <item>eclipselink-cascade-deletes-model</item>
                                <item>jpa-performance</item>
                                <item>eclipselink-metamodel-model</item>
                                <item>eclipselink-delimited-model</item>
                                <item>eclipselink-extensibility-model</item>
                                <item>eclipselink-beanvalidation-model</item>
                                <item>eclipselink-beanvalidation-dynamic-model</item>
                                <item>eclipselink-xml-mapping-metadata-complete</item>
                                <item>eclipselink-xml-composite-advanced-model-member_1</item>
                                <item>eclipselink-xml-extended-model</item>
                                <item>eclipselink-xml-extended-composite-advanced-model-member_1</item>
                            </items>
                            <pluginExecutors>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.codehaus.mojo</groupId>
                                        <artifactId>exec-maven-plugin</artifactId>
                                    </plugin>
                                    <goal>java</goal>
                                    <configuration>
                                        <mainClass>org.eclipse.persistence.tools.weaving.jpa.StaticWeave</mainClass>
                                        <classpathScope>test</classpathScope>
                                        <systemProperties>
                                            <!-- Ensure, that JDK default parser is used. If Oracle profile enabled Oracle XMLParserV2 will crash with
                                            Internal Exception: java.lang.NoClassDefFoundError: oracle/i18n/util/LocaleMapper.
                                            This class is not available as a part of Oracle JDBC driver bundles-->
                                            <systemProperty>
                                                <key>javax.xml.parsers.DocumentBuilderFactory</key>
                                                <value>com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl</value>
                                            </systemProperty>
                                        </systemProperties>
<!--                                        <commandlineArgs>-loglevel ALL</commandlineArgs>-->
                                        <additionalClasspathElements>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-field-access-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-cascade-deletes-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-cacheable-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-ddl-generation-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-delimited-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-extensibility-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-jpa21-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-metamodel-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-partitioned-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-mapping-metadata-complete.jar</additionalClasspathElement>
                                        </additionalClasspathElements>
                                        <arguments>
                                            <!-- Weaving source -->
                                            <argument>${project.build.directory}/${item}.jar</argument>
                                            <!-- Weaving target -->
                                            <argument>${project.build.directory}/${wave.file.prefix}${item}.jar</argument>
                                        </arguments>
                                    </configuration>
                                </pluginExecutor>
                            </pluginExecutors>
                        </configuration>
                    </execution>
                    <!--Static Weaving (persistence.xml in different jar file, than source). It's based on exec-maven-plugin instead of staticweave-maven-plugin due some limitations.-->
                    <execution>
                        <id>weave-model-static-with-persistence-info</id>
                        <phase>process-test-classes</phase>
                        <goals>
                            <goal>iterator</goal>
                        </goals>
                        <configuration>
                            <skip>${skip-jpa-jse-build}</skip>
                            <itemsWithProperties>
                                <itemWithProperty>
                                    <name>eclipselink-xml-only-model</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-annotation-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-xml-merge-model</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-annotation-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-composite-advanced-model-member_1</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-composite-advanced-model-member_2</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-composite-advanced-model-member_3</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-xml-composite-advanced-model-member_2</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-xml-composite-advanced-model-member_3</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-xml-extended-composite-advanced-model-member_2</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>eclipselink-xml-extended-composite-advanced-model-member_3</name>
                                    <properties>
                                        <item.persistenceinfo>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</item.persistenceinfo>
                                    </properties>
                                </itemWithProperty>
                            </itemsWithProperties>
                            <pluginExecutors>
                                <pluginExecutor>
                                    <plugin>
                                        <groupId>org.codehaus.mojo</groupId>
                                        <artifactId>exec-maven-plugin</artifactId>
                                    </plugin>
                                    <goal>java</goal>
                                    <configuration>
                                        <mainClass>org.eclipse.persistence.tools.weaving.jpa.StaticWeave</mainClass>
                                        <classpathScope>test</classpathScope>
                                        <additionalClasspathElements>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-field-access-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-cascade-deletes-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-cacheable-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-ddl-generation-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-delimited-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-extensibility-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-jpa21-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-metamodel-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-partitioned-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-mapping-metadata-complete.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                            <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                        </additionalClasspathElements>
                                        <arguments>
                                            <!-- Weaving persistence info -->
                                            <argument>-persistenceinfo</argument>
                                            <!-- Weaving persistence info name in expression ${item.persistenceinfo} must exactly match with itemWithProperty property key "<item.persistenceinfo>" -->
                                            <argument>${item.persistenceinfo}</argument>
                                            <!-- Weaving source -->
                                            <argument>${project.build.directory}/${item}.jar</argument>
                                            <!-- Weaving target -->
                                            <argument>${project.build.directory}/${wave.file.prefix}${item}.jar</argument>
                                        </arguments>
                                    </configuration>
                                </pluginExecutor>
                            </pluginExecutors>
                        </configuration>
                    </execution>
                    <!-- Test execution is divided into two parts due Travis-CI execution timeout limit (50 min). -->
                    <execution>
                        <id>test-server-lrg1</id>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>invoker</goal>
                        </goals>
                        <configuration>
                            <!--Items/profiles with persistenceUnit name "default".-->
                            <skip>${skip-server-test-jpa-lrg1}</skip>
                            <items>
                                <item>server-test-jpa-advanced</item>
                                <item>server-test-jpa-advanced-multitenant</item>
                                <item>server-test-jpa-cacheable</item>
                                <item>server-test-jpa-criteria</item>
                                <item>server-test-jpa-datatypes</item>
                                <item>server-test-jpa-datetime</item>
                                <item>server-test-jpa-ddlgeneration</item>
                                <item>server-test-jpa-extensibility</item>
                                <item>server-test-jpa-fetchgroups</item>
                                <item>server-test-jpa-inheritance</item>
                                <item>server-test-jpa-inherited</item>
                                <item>server-test-jpa-jpql</item>
                                <!--<item>server-test-jpa-lob</item>-->
                                <item>server-test-jpa-metamodel</item>
                                <item>server-test-jpa-orphanremoval</item>
                                <item>server-test-jpa-privateowned</item>
                                <item>server-test-jpa-relationships</item>
                            </items>
                            <baseDirectory>${project.basedir}</baseDirectory>
                            <goals>
                                <goal>clean</goal>
                                <goal>verify</goal>
                            </goals>
                            <profiles>
                                <profile>@item@</profile>
                            </profiles>
                            <properties>
                                <skip-server-test-jpa>false</skip-server-test-jpa>
                                <skip-server-test-jpa-lrg1>true</skip-server-test-jpa-lrg1>
                                <test.skip.in-memory.db>false</test.skip.in-memory.db>
                            </properties>
                        </configuration>
                    </execution>
                    <!-- Test execution is divided into two parts due Travis-CI execution timeout limit (50 min). -->
                    <execution>
                        <id>test-server-lrg2</id>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>invoker</goal>
                        </goals>
                        <configuration>
                            <skip>${skip-server-test-jpa-lrg2}</skip>
                            <!-- Moved from test-server-lrg2 to fit Travis-CI execution timeout limit (50 min). -->
                            <itemsWithProperties>
                                <itemWithProperty>
                                    <name>server-test-jpa-validation</name>
                                    <properties>
                                        <puName>default</puName>
                                    </properties>
                                </itemWithProperty>
                                <!-- Moved from test-server-lrg2 to fit Travis-CI execution timeout limit (50 min). -->
                                <itemWithProperty>
                                    <name>server-test-jpa-xmltest</name>
                                    <properties>
                                        <puName>default</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-beanvalidation</name>
                                    <properties>
                                        <puName>beanvalidation</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-cascadedeletes</name>
                                    <properties>
                                        <puName>cascade-deletes</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-delimited</name>
                                    <properties>
                                        <puName>delimited</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-fieldaccess-advanced</name>
                                    <properties>
                                        <puName>fieldaccess</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-fieldaccess-fetchgroups</name>
                                    <properties>
                                        <puName>fieldaccess</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-fieldaccess-relationships</name>
                                    <properties>
                                        <puName>fieldaccess</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-plsql</name>
                                    <properties>
                                        <puName>plsql</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-jpaadvancedproperties</name>
                                    <properties>
                                        <puName>JPAADVProperties</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-nativeapitest</name>
                                    <properties>
                                        <puName>nativeapitest</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-sessionbean</name>
                                    <properties>
                                        <puName>sessionbean</puName>
                                    </properties>
                                </itemWithProperty>
                                <itemWithProperty>
                                    <name>server-test-jpa-xml-mergeinherited</name>
                                    <properties>
                                        <puName>ddlGeneration</puName>
                                    </properties>
                                </itemWithProperty>
                            </itemsWithProperties>
                            <baseDirectory>${project.basedir}</baseDirectory>
                            <goals>
                                <goal>clean</goal>
                                <goal>verify</goal>
                            </goals>
                            <profiles>
                                <profile>@item@</profile>
                            </profiles>
                            <properties>
                                <skip-server-test-jpa>false</skip-server-test-jpa>
                                <skip-server-test-jpa-lrg2>true</skip-server-test-jpa-lrg2>
                                <test.skip.in-memory.db>false</test.skip.in-memory.db>
                                <puName>@puName@</puName>
                            </properties>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <!--Pack test classes due dependency to other modules (JPA)-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <executions>
                    <execution>
                        <id>default-jar</id>
                        <configuration>
                            <!--Some classifier is required there. Otherwise maven-jar-plugin throw error.-->
                            <classifier>client</classifier>
                        </configuration>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>default-test-jar</id>
                        <goals>
                            <goal>test-jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--Generate OSGi bundle/manifest-->
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <extensions>true</extensions>
                <configuration>
                    <instructions>
                        <Import-Package>commonj.sdo.impl</Import-Package>
                        <Premain-Class>org.eclipse.persistence.internal.jpa.deployment.JavaSEC
                            MPInitializerAgent
                        </Premain-Class>
                    </instructions>
                </configuration>
                <executions>
                    <execution>
                        <id>bundle-manifest</id>
                        <goals>
                            <goal>manifest</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
                <configuration>
                    <dependenciesToScan>
                        <dependency>org.eclipse.persistence:org.eclipse.persistence.core.test.framework</dependency>
                    </dependenciesToScan>
                    <workingDirectory>${project.build.directory}/test-run</workingDirectory>
                    <!--Set system properties required for tests-->
                    <systemPropertiesFile>${test.properties.file}</systemPropertiesFile>
                </configuration>
                <executions>
                    <execution>
                        <id>clear-database</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <!--<skipTests>${skip-test-jpa-srg}</skipTests>-->
                            <argValue>-Dignore</argValue>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-srg</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-srg}</skipTests>
                            <reportNameSuffix>test-jpa-srg</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <systemPropertyVariables>
                                <orm.testing>jpa</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_1</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_1</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <additionalClasspathElements>
                                <!-- Common model jars for LRG 22 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <!-- Special model jars for LRG 22_1 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-cacheable-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_2</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_2</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <additionalClasspathElements>
                                <!-- Common model jars for LRG 22 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <!-- Special model jars for LRG 22_2 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-partitioned-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-extensibility-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-plsql-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_3.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel2</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_3</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_3</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <additionalClasspathElements>
                                <!-- Common model jars for LRG 22 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <!-- Special model jars for LRG 22_3 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-field-access-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel3</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_4</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_4</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <additionalClasspathElements>
                                <!-- Common model jars for LRG 22 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <!-- Special model jars for LRG 22_4 test.-->
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-ddl-generation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-metamodel-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-delimited-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-cascade-deletes-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-mapping-metadata-complete.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel4</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_xml_entity_mappings</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_xml_entity_mappings</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_3.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.xml.EntityMappingsJUnitTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_jpa22_advanced</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_jpa22_advanced</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-jpa22-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa22.advanced.JPA22TestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg22_weaver</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg22}</skipTests>
                            <reportNameSuffix>test-jpa-lrg22_weaver</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.weaving.SimpleWeaverTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-lrg21</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-lrg21}</skipTests>
                            <reportNameSuffix>test-jpa-lrg21</reportNameSuffix>
                            <!--EclipseLink dynamic weaving is enabled.
                                When it will be disabled by -Dignore or without arg switch it leads into test errors-->
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar}</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-jpa21-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa21.advanced.JPA21TestSuite</include>
                                <include>org.eclipse.persistence.testing.tests.weaving.SimpleWeaverTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-dynamic</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-dynamic}</skipTests>
                            <reportNameSuffix>test-jpa-dynamic</reportNameSuffix>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_3.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.jpa.dynamic.AllTests</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-identity</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-identity}</skipTests>
                            <reportNameSuffix>test-jpa-identity</reportNameSuffix>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-identity-model.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.jpa22.identity.IdentityTest</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-no-weave</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-no-weave}</skipTests>
                            <reportNameSuffix>test-jpa-no-weave</reportNameSuffix>
                            <!--EclipseLink Dynamic Weaving is disabled.-->
                            <argLine>-Dignore -DTEST_NO_WEAVING=true</argLine>
                            <systemPropertyVariables>
                                <orm.testing>jpa</orm.testing>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-properties.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-pu with spaces.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-advanced-field-access-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-cascade-deletes-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-cacheable-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-ddl-generation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-delimited-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-extensibility-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-jpa22-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-metamodel-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-partitioned-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-mapping-metadata-complete.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model-member_3.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.xml.EntityMappingsJUnitTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-static-weave</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-static-weave}</skipTests>
                            <reportNameSuffix>test-jpa-static-weave</reportNameSuffix>
                            <!--EclipseLink Dynamic Weaving is disabled.-->
                            <argValue>-Dignore</argValue>
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar} -Dignore</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                                <test.weaving>-Dignore</test.weaving>
                                <test.weaving.option>-Dignore</test.weaving.option>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-annotation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-ddl-generation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-only-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-merge-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-validation-failed-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-advanced-field-access-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-advanced-properties.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-pu with spaces.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-partitioned-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-plsql-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-cascade-deletes-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-cacheable-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}jpa-performance.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-metamodel-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-delimited-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-extensibility-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-beanvalidation-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-beanvalidation-dynamic-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-composite-advanced-model-member_3.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-remote.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-mapping-metadata-complete.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>test-jpa-static-weave_xml_entity_mappings</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-test-jpa-static-weave}</skipTests>
                            <reportNameSuffix>test-jpa-static-weave</reportNameSuffix>
                            <!--EclipseLink Dynamic Weaving is disabled.-->
                            <argValue>-Dignore</argValue>
                            <argLine>-javaagent:${org.eclipse.persistence:org.eclipse.persistence.jpa:jar} -Dignore</argLine>
                            <systemPropertyVariables>
                                <orm.testing>eclipselink</orm.testing>
                                <test.weaving>-Dignore</test.weaving>
                                <test.weaving.option>-Dignore</test.weaving.option>
                            </systemPropertyVariables>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-extended-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/eclipselink-xml-extended-composite-advanced-model.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-extended-composite-advanced-model-member_1.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-extended-composite-advanced-model-member_2.jar</additionalClasspathElement>
                                <additionalClasspathElement>${project.build.directory}/${wave.file.prefix}eclipselink-xml-extended-composite-advanced-model-member_3.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>org.eclipse.persistence.testing.tests.ClearDatabaseSchemaTest</include>
                                <include>org.eclipse.persistence.testing.tests.jpa.xml.EntityMappingsJUnitTestSuite</include>
                            </includes>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.carlspring.maven</groupId>
                <artifactId>derby-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>start-derby</id>
                        <phase>process-test-resources</phase>
                        <goals>
                            <goal>start</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>stop-derby</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>stop</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--Server side tests-->
            <!--Run specified tests/test suite-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
                <executions>
                    <execution>
                        <id>default-server-test</id>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <skipTests>${skip-server-test-jpa}</skipTests>
                            <workingDirectory>${project.build.testOutputDirectory}</workingDirectory>
                            <!--Set system properties required for tests-->
                            <systemPropertiesFile>${testjee.properties.file}</systemPropertiesFile>
                            <systemPropertiesFile>${test.properties.file}</systemPropertiesFile>
                            <systemProperties>
                                <proxy.user.name>${pa.connection.user}</proxy.user.name>
                                <server.platform>${server.platform}</server.platform>
                                <server.user>${server.usr}</server.user>
                                <server.password>${server.pwd}</server.password>
                                <server.url>${server.rmi.protocol}://${server.host}:${server.rmi.port}</server.url>
                                <server.testrunner>${server.testrunner.prefix}${server.testrunner.suffix}</server.testrunner>
                                <server.testrunner1>${server.testrunner.prefix}${server.testrunner1.suffix}</server.testrunner1>
                                <server.testrunner2>${server.testrunner.prefix}${server.testrunner2.suffix}</server.testrunner2>
                                <server.testrunner3>${server.testrunner.prefix}${server.testrunner3.suffix}</server.testrunner3>
                                <server.testrunner4>${server.testrunner.prefix}${server.testrunner4.suffix}</server.testrunner4>
                                <server.testrunner5>${server.testrunner.prefix}${server.testrunner5.suffix}</server.testrunner5>
                                <server.testrunner6>${server.testrunner.prefix}${server.testrunner6.suffix}</server.testrunner6>
                                <server.run>TRUE</server.run>
                                <pa.connection.user>${pa.connection.user}</pa.connection.user>
                                <pa.proxyuser>${pa.proxyuser}</pa.proxyuser>
                                <pa.proxyuser2>${pa.proxyuser2}</pa.proxyuser2>
                                <pa.connection.password>${pa.connection.password}</pa.connection.password>
                                <pa.proxyuser.password>${pa.proxyuser.password}</pa.proxyuser.password>
                                <pa.proxyuser2.password>${pa.proxyuser2.password}</pa.proxyuser2.password>
                                <com.ibm.SSL.ConfigURL>${com.ibm.SSL.ConfigURL}</com.ibm.SSL.ConfigURL>
                                <com.ibm.CORBA.ConfigURL>${com.ibm.CORBA.ConfigURL}</com.ibm.CORBA.ConfigURL>
                                <run.metadata.cache.test.suite>${run.metadata.cache.test.suite}</run.metadata.cache.test.suite>
                            </systemProperties>
                            <reportNameSuffix>test-jpa-server</reportNameSuffix>
                            <additionalClasspathElements>
                                <additionalClasspathElement>${project.build.directory}/${modelname}_client.jar</additionalClasspathElement>
                            </additionalClasspathElements>
                            <includes>
                                <include>${test-client-class}</include>
                            </includes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>verify-server-test</id>
                        <goals>
                            <goal>verify</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--Skip WildFly configuration if server binaries are not available.-->
            <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>groovy-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>check-wildfly-home-existence</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--Set current EclipseLink JARs into JBoss/WildFly org.eclipse.persistence system module-->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>xml-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>configure-wildfly-modules</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>transform</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--Start selected JEE server configure there datasource and deploy test application-->
            <plugin>
                <groupId>org.codehaus.cargo</groupId>
                <artifactId>cargo-maven2-plugin</artifactId>
                <configuration>
                    <skip>${skip-server-test-jpa}</skip>
                    <deployables>
                        <deployable>
                            <location>${project.build.directory}/${modelname}.ear</location>
                            <type>ear</type>
                            <properties>
                                <name>${modelname}</name>
                            </properties>
                        </deployable>
                    </deployables>
                </configuration>
                <executions>
                    <execution>
                        <id>start-container</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>restart</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>stop-container</id>
                        <phase>post-integration-test</phase>
                        <goals>
                            <goal>stop</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>oracle</id>
            <dependencies>
                <!--db.platform=org.eclipse.persistence.platform.database.oracle.Oracle12Platform comes from there-->
                <dependency>
                    <groupId>org.eclipse.persistence</groupId>
                    <artifactId>org.eclipse.persistence.oracle</artifactId>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </profile>
        <profile>
            <id>weblogic</id>
            <properties>
                <server.testrunner.prefix></server.testrunner.prefix>
            </properties>
        </profile>
        <profile>
            <id>glassfish</id>
            <properties>
                <server.testrunner.prefix></server.testrunner.prefix>
            </properties>
        </profile>
        <profile>
            <id>jpa21</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-compiler-plugin</artifactId>
                        <configuration>
                            <testExcludes>
                                <testExclude>org/eclipse/persistence/testing/tests/jpa22/**</testExclude>
                                <testExclude>org/eclipse/persistence/testing/models/jpa22/**</testExclude>
                            </testExcludes>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>test-srg</id>
            <properties>
                <skip-test-jpa-srg>false</skip-test-jpa-srg>
            </properties>
        </profile>
        <profile>
            <id>test-lrg</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-lrg22>false</skip-test-jpa-lrg22>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-srg</id>
            <properties>
                <skip-test-jpa-srg>false</skip-test-jpa-srg>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-lrg</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-lrg22>false</skip-test-jpa-lrg22>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-lrg21</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-lrg21>false</skip-test-jpa-lrg21>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-dynamic</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-dynamic>false</skip-test-jpa-dynamic>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-identity</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-identity>false</skip-test-jpa-identity>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-no-weave</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-no-weave>false</skip-test-jpa-no-weave>
            </properties>
        </profile>
        <profile>
            <id>test-jpa-static-weave</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-test-jpa-static-weave>false</skip-test-jpa-static-weave>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-lrg1</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa-lrg1>false</skip-server-test-jpa-lrg1>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <test.skip.in-memory.db>true</test.skip.in-memory.db>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-lrg2</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa-lrg2>false</skip-server-test-jpa-lrg2>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <test.skip.in-memory.db>true</test.skip.in-memory.db>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-advanced</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-model</modelname>
                <extra-model>eclipselink-advanced-model-extra</extra-model>
                <packageName>advanced</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.advanced.AdvancedServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-advanced-multitenant</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-model</modelname>
                <extra-model>eclipselink-advanced-multitenant-model-extra</extra-model>
                <packageName>advanced</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.advanced.multitenant.AdvancedMultiTenantServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-jpa21-advanced</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpa21-model-server</modelname>
                <extra-model>eclipselink-jpa21-model-server</extra-model>
                <packageName>jpa21</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa21.advanced.JPA21TestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-jpa22-advanced</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpa22-model-server</modelname>
                <extra-model>eclipselink-jpa22-model-server</extra-model>
                <packageName>jpa22</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa22.advanced.JPA22TestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-beanvalidation</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>beanvalidation</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-beanvalidation-model</modelname>
                <extra-model>eclipselink-beanvalidation-model</extra-model>
                <packageName>beanvalidation</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.beanvalidation.BeanValidationJunitTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-advanced-multitenantEMF</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-model</modelname>
                <extra-model>eclipselink-advanced-multitenant-projectcache-model-extra</extra-model>
                <packageName>advanced</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.advanced.multitenant.AdvancedMultiTenantSharedEMFJunitTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-advanced-multitenant123</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-model</modelname>
                <extra-model>eclipselink-advanced-multitenant-projectcache-model-extra</extra-model>
                <packageName>advanced</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.advanced.multitenant.AdvancedMultiTenant123JunitTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-cacheable</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-cacheable-model</modelname>
                <extra-model>eclipselink-cacheable-model-extra</extra-model>
                <packageName>cacheable</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.cacheable.CacheableServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-cascadedeletes</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>cascade-deletes</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-cascade-deletes-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>cascadedeletes</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.cascadedeletes.CascadeDeletesJUnitTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-criteria</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-model-criteria</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>criteria</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.criteria.CriteriaServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-datatypes</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-datatypes-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>datatypes</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.datatypes.NullBindingJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-datetime</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-datetime-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>datetime</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.datetime.NullBindingJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-ddlgeneration</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-ddl-generation-model</modelname>
                <extra-model>eclipselink-ddl-generation-model-extra</extra-model>
                <packageName>ddlgeneration</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.ddlgeneration.DDLGenerationServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-delimited</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>delimited</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-delimited-model</modelname>
                <extra-model>eclipselink-delimited-model-extra</extra-model>
                <packageName>delimited</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.delimited.DelimitedPUTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-extensibility</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-extensibility-model</modelname>
                <extra-model>eclipselink-extensibility-model</extra-model>
                <packageName>extensibility</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.extensibility.ExtensibilityTests</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-fetchgroups</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-fetchgroups-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>fetchgroups</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.fetchgroups.FetchGroupsServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-fieldaccess-advanced</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>fieldaccess</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-field-access-model</modelname>
                <extra-model>eclipselink-advanced-field-access-model</extra-model>
                <packageName>fieldaccess/advanced</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.FAServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-fieldaccess-fetchgroups</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>fieldaccess</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-fetchgroups-field-access-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>fieldaccess/fetchgroups</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.fieldaccess.fetchgroups.FAServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-fieldaccess-relationships</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>fieldaccess</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-relationships-field-access-model</modelname>
                <extra-model>eclipselink-relationships-field-access-model</extra-model>
                <packageName>fieldaccess/relationships</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.fieldaccess.relationships.FRServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-inheritance</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-inheritance-model</modelname>
                <extra-model>eclipselink-inheritance-model</extra-model>
                <packageName>inheritance</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.inheritance.InheritanceServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-inherited</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-inherited-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>inherited</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.inherited.InheritedServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-plsql</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>plsql</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-plsql-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>plsql</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.plsql.PLSQLTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-jpaadvancedproperties</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>JPAADVProperties</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-advanced-properties</modelname>
                <extra-model>eclipselink-advanced-properties</extra-model>
                <packageName>jpaadvancedproperties</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.jpaadvancedproperties.JPAAdvPropertiesJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-jpql</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpql-model</modelname>
                <extra-model>eclipselink-jpql-model</extra-model>
                <packageName>jpql</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.jpql.JPQLServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-lob</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-lob-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>lob</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.lob.LobJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-metamodel</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-metamodel-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>metamodel</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.metamodel.MetamodelMetamodelTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-nativeapitest</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>nativeapitest</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-nativeapitest-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>nativeapitest</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.nativeapitest.NativeAPITests</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-orphanremoval</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-orphanremoval-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>orphanremoval</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.orphanremoval.OrphanRemovalJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-privateowned</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-privateowned-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>privateowned</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.privateowned.PrivateOwnedJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-relationships</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-relationships-model</modelname>
                <extra-model>eclipselink-relationships-model</extra-model>
                <packageName>relationships</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.relationships.RelationshipsServerTestSuite</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-sessionbean</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>sessionbean</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-sessionbean-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>sessionbean</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.sessionbean.SessionBeanTests</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-sessionbean-ha</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>sessionbean</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-sessionbean-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>sessionbean</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.sessionbean.SessionBeanHATests</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa21-sessionbean</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>jpa21-sessionbean</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpa21-sessionbean-model</modelname>
                <extra-model>eclipselink-jpa21-sessionbean-model</extra-model>
                <packageName>jpa21/sessionbean</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa21.sessionbean.EntityListenerInjectionTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa22-sessionbean-entity-listener</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>jpa22-sessionbean</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpa22-sessionbean-model</modelname>
                <extra-model>eclipselink-jpa22-sessionbean-model</extra-model>
                <packageName>jpa22/sessionbean</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa22.sessionbean.EntityListenerInjectionTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa22-sessionbean-attribute-converter</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>jpa22-sessionbean</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-jpa22-sessionbean-model</modelname>
                <extra-model>eclipselink-jpa22-sessionbean-model</extra-model>
                <packageName>jpa22/sessionbean</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa22.sessionbean.AttributeConverterInjectionTest</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-validation</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-validation-model</modelname>
                <extra-model>common-server-generic</extra-model>
                <packageName>validation</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.validation.CMP3ValidationTestModel</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-xml-mergeinherited</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <puName>ddlGeneration</puName>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-xml-mergeinherited-model</modelname>
                <extra-model>eclipselink-xml-mergeinherited-model</extra-model>
                <packageName>xml/merge/inherited</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.xml.merge.inherited.EntityMappingsMergeInheritedJUnitTestCase</test-client-class>
            </properties>
        </profile>
        <profile>
            <id>server-test-jpa-xmltest</id>
            <properties>
                <skip-test-jpa-srg>true</skip-test-jpa-srg>
                <skip-server-test-jpa>false</skip-server-test-jpa>
                <skip-jpa-jse-build>true</skip-jpa-jse-build>
                <!--modelname property name is used there due substitution string in application.xml-->
                <modelname>eclipselink-xml-servertest-model</modelname>
                <extra-model>eclipselink-xml-servertest-model</extra-model>
                <packageName>xml</packageName>
                <test-client-class>org.eclipse.persistence.testing.tests.jpa.xml.EntityMappingsServerJUnitTestSuite</test-client-class>
            </properties>
        </profile>
    </profiles>
</project>
