| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <!-- |
| Maven release plugin requires the project tag to be on a single line. |
| --> |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>org.apache.openjpa</groupId> |
| <artifactId>openjpa-persistence-jdbc</artifactId> |
| <packaging>jar</packaging> |
| <name>OpenJPA JPA JDBC</name> |
| <description>OpenJPA JPA JDBC</description> |
| <url>http://openjpa.apache.org</url> |
| <parent> |
| <groupId>org.apache.openjpa</groupId> |
| <artifactId>openjpa-parent</artifactId> |
| <version>1.0.5-SNAPSHOT</version> |
| </parent> |
| <properties> |
| <openjpa.Log>DefaultLevel=INFO</openjpa.Log> |
| <!-- to set debug arguments, you might set the following at the command line: |
| -Dtest.jvm.arguments="-Xmx500m -agentlib:jdwp=transport=dt_socket,server=y,address=8000" |
| --> |
| <test.jvm.arguments>-Xmx500m</test.jvm.arguments> |
| <dbcp.maxActive>10</dbcp.maxActive> |
| <dbcp.maxIdle>5</dbcp.maxIdle> |
| <dbcp.minIdle>2</dbcp.minIdle> |
| <dbcp.maxWait>10000</dbcp.maxWait> |
| <dbcp.args>MaxActive=${dbcp.maxActive},MaxIdle=${dbcp.maxIdle},MinIdle=${dbcp.minIdle},MaxWait=${dbcp.maxWait}</dbcp.args> |
| <derby.locks.waitTimeout>6</derby.locks.waitTimeout> |
| <derby.locks.deadlockTimeout>5</derby.locks.deadlockTimeout> |
| </properties> |
| <profiles> |
| |
| <!-- Profile for testing with Apache Derby --> |
| <profile> |
| <id>test-derby</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| <property><name>test-derby</name></property> |
| </activation> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.derby</groupId> |
| <artifactId>derby</artifactId> |
| <scope>test</scope> |
| <version>10.2.2.0</version> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>org.apache.derby.jdbc.EmbeddedDriver</connection.driver.name> |
| <connection.url>jdbc:derby:target/database/openjpa-derby-database;create=true</connection.url> |
| <connection.username /> |
| <connection.password /> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with HSQL DB --> |
| <profile> |
| <id>test-hsqldb</id> |
| <activation><property><name>test-hsqldb</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>hsqldb</groupId> |
| <artifactId>hsqldb</artifactId> |
| <version>1.8.0.7</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>org.hsqldb.jdbcDriver</connection.driver.name> |
| <connection.url>jdbc:hsqldb:target/database/openjpa-hsqldb-database;create=true</connection.url> |
| <connection.username>sa</connection.username> |
| <connection.password /> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with MySQL DB --> |
| <profile> |
| <id>test-mysql</id> |
| <activation><property><name>test-mysql</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>mysql</groupId> |
| <artifactId>mysql-connector-java</artifactId> |
| <version>5.1.6</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>com.mysql.jdbc.Driver</connection.driver.name> |
| <connection.url>${openjpa.mysql.url}</connection.url> |
| <connection.username>${openjpa.mysql.username}</connection.username> |
| <connection.password>${openjpa.mysql.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with PostgreSQL DB --> |
| <profile> |
| <id>test-postgresql</id> |
| <activation><property><name>test-postgresql</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>postgresql</groupId> |
| <artifactId>postgresql</artifactId> |
| <version>8.1-407.jdbc3</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>org.postgresql.Driver</connection.driver.name> |
| <connection.url>${openjpa.postgresql.url}</connection.url> |
| <connection.username>${openjpa.postgresql.username}</connection.username> |
| <connection.password>${openjpa.postgresql.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with SQLServer DB using the jTDS driver --> |
| <profile> |
| <id>test-sqlserver</id> |
| <activation><property><name>test-sqlserver</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>net.sourceforge.jtds</groupId> |
| <artifactId>jtds</artifactId> |
| <version>1.2</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>net.sourceforge.jtds.jdbc.Driver</connection.driver.name> |
| <connection.url>${openjpa.sqlserver.url}</connection.url> |
| <connection.username>${openjpa.sqlserver.username}</connection.username> |
| <connection.password>${openjpa.sqlserver.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with Sybase DB using the jTDS driver --> |
| <profile> |
| <id>test-sybase</id> |
| <activation><property><name>test-sybase</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>net.sourceforge.jtds</groupId> |
| <artifactId>jtds</artifactId> |
| <version>1.2</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>net.sourceforge.jtds.jdbc.Driver</connection.driver.name> |
| <connection.url>${openjpa.sybase.url}</connection.url> |
| <connection.username>${openjpa.sybase.username}</connection.username> |
| <connection.password>${openjpa.sybase.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with a custom DB using a system jar --> |
| <!-- |
| For example, to test with Oracle, you might run: |
| mvn test -Dtest=TestPersistence -Ptest-custom \ |
| -Dopenjpa.custom.driverjar=$(pwd)/drivers/jdbc-oracle-10_2_0_1_0.jar \ |
| -Dopenjpa.custom.driverclass=oracle.jdbc.driver.OracleDriver \ |
| -Dopenjpa.custom.url=jdbc:oracle:thin:@HOST:PORT:DBNAME \ |
| -Dopenjpa.custom.username=USERNAME \ |
| -Dopenjpa.custom.password=PASSWORD |
| --> |
| <profile> |
| <id>test-custom</id> |
| <activation><property><name>test-custom</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>openjpa.customdriver</groupId> |
| <artifactId>openjpa.customdriver</artifactId> |
| <version>1.0</version> |
| <scope>system</scope> |
| <systemPath>${openjpa.custom.driverjar}</systemPath> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>${openjpa.custom.driverclass}</connection.driver.name> |
| <connection.url>${openjpa.custom.url}</connection.url> |
| <connection.username>${openjpa.custom.username}</connection.username> |
| <connection.password>${openjpa.custom.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- Profile for testing with a custom DB using two system jars. |
| Some databases (DB2) use more than one jar for their JDBC provider. |
| Functionally this is identical to the previous profile, with a |
| second system dependency added. |
| --> |
| <!-- |
| For example, to test with DB2, you might run: |
| mvn test -Dtest=TestPersistence -Ptest-custom2 \ |
| -Dopenjpa.custom.driverjar1=$(pwd)/drivers/db2jcc.jar \ |
| -Dopenjpa.custom.driverjar2=$(pwd)/drviers/db2jcc_license_cu.jar \ |
| -Dopenjpa.custom.driverclass=com.ibm.db2.jcc.DB2Driver \ |
| -Dopenjpa.custom.url=jdbc:db2://HOST:PORT/DBNAME \ |
| -Dopenjpa.custom.username=USERNAME \ |
| -Dopenjpa.custom.password=PASSWORD |
| --> |
| <profile> |
| <id>test-custom2</id> |
| <activation><property><name>test-custom2</name></property></activation> |
| <dependencies> |
| <dependency> |
| <groupId>openjpa.customdriver1</groupId> |
| <artifactId>openjpa.customdriver1</artifactId> |
| <version>1.0</version> |
| <scope>system</scope> |
| <systemPath>${openjpa.custom.driverjar1}</systemPath> |
| </dependency> |
| <dependency> |
| <groupId>openjpa.customdriver2</groupId> |
| <artifactId>openjpa.customdriver2</artifactId> |
| <version>1.0</version> |
| <scope>system</scope> |
| <systemPath>${openjpa.custom.driverjar2}</systemPath> |
| </dependency> |
| </dependencies> |
| <properties> |
| <connection.driver.name>${openjpa.custom.driverclass}</connection.driver.name> |
| <connection.url>${openjpa.custom.url}</connection.url> |
| <connection.username>${openjpa.custom.username}</connection.username> |
| <connection.password>${openjpa.custom.password}</connection.password> |
| </properties> |
| </profile> |
| |
| <!-- |
| The test-custom2 profile does not work very well when used with a |
| continuous build system. As a convenience I've added profiles for |
| some of the proprietary databases to make testing easier. |
| --> |
| <profile> |
| <!-- |
| Example db2 profile. You can use this profile if you: |
| 1) have the DB2 artifacts installed in a local repo and supply |
| the URL: |
| -Ddb2.maven.repo=http://my.local.repo |
| 2) have a copy of the DB2 JCC driver and run the following |
| commands : |
| mvn install:install-file -Dfile=${path to db2jcc.jar} \ |
| -DgroupId=com.ibm.db2 \ |
| -DartifactId=jcc-driver \ |
| -Dversion=9.5 \ |
| -Dpackaging=jar |
| |
| mvn install:install-file -Dfile=${path to db2jcc_license.jar} \ |
| -DgroupId=com.ibm.db2 \ |
| -DartifactId=jcc-license \ |
| -Dversion=9.5 \ |
| -Dpackaging=jar |
| |
| You must also set the following properties: |
| -Dopenjpa.db2.url=jdbc:db2://<HOST>:<PORT>/<DBNAME> |
| -Dopenjpa.db2.username=<db2_uid> |
| -Dopenjpa.db2.password=<db2_pwd> |
| |
| Optionally, you can override the default DB2 groupId and version |
| by also supplying the following properties: |
| -Ddb2.groupid=com.ibm.db2 |
| -Ddb2.version=9.5 |
| --> |
| <id>test-db2-jcc</id> |
| <dependencies> |
| <dependency> |
| <groupId>${db2.groupid}</groupId> |
| <artifactId>jcc-driver</artifactId> |
| <version>${db2.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>${db2.groupid}</groupId> |
| <artifactId>jcc-license</artifactId> |
| <version>${db2.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <db2.maven.repo>http://not.a.real.repository</db2.maven.repo> |
| <db2.groupid>com.ibm.db2</db2.groupid> |
| <db2.version>9.5</db2.version> |
| <connection.driver.name>com.ibm.db2.jcc.DB2Driver</connection.driver.name> |
| <connection.url>${openjpa.db2.url}</connection.url> |
| <connection.username>${openjpa.db2.username}</connection.username> |
| <connection.password>${openjpa.db2.password}</connection.password> |
| </properties> |
| <repositories> |
| <repository> |
| <id>db2.repository</id> |
| <name>DB2 Repository</name> |
| <url>${db2.maven.repo}</url> |
| <layout>default</layout> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| <releases> |
| <enabled>true</enabled> |
| <checksumPolicy>ignore</checksumPolicy> |
| </releases> |
| </repository> |
| </repositories> |
| </profile> |
| <profile> |
| <!-- |
| Example oracle profile. You can use this profile if you: |
| 1) have the Oracle artifacts installed in a local repo and |
| supply the URL: |
| -Doracle.maven.repo=http://my.local.repo |
| 2) have a copy of the Oracle driver and run the following |
| command: |
| mvn install:install-file -Dfile=${path to ojdbc.jar} \ |
| -DgroupId=com.oracle \ |
| -DartifactId=jdbc-driver \ |
| -Dversion=10g \ |
| -Dpackaging=jar |
| |
| You must also set the following properties: |
| -Dopenjpa.oracle.url |
| -Dopenjpa.oracle.username |
| -Dopenjpa.oracle.password |
| |
| Optionally, you can override the default Oracle groupId and |
| version by also supplying the following properties: |
| -Doracle.groupid=com.oracle |
| -Doracle.version=10g |
| --> |
| <id>test-oracle</id> |
| <dependencies> |
| <dependency> |
| <groupId>${oracle.groupid}</groupId> |
| <artifactId>jdbc-driver</artifactId> |
| <version>${oracle.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <properties> |
| <oracle.maven.repo>http://not.a.real.repository</oracle.maven.repo> |
| <oracle.groupid>com.oracle</oracle.groupid> |
| <oracle.version>10g</oracle.version> |
| <connection.driver.name>oracle.jdbc.driver.OracleDriver</connection.driver.name> |
| <connection.url>${openjpa.oracle.url}</connection.url> |
| <connection.username>${openjpa.oracle.username}</connection.username> |
| <connection.password>${openjpa.oracle.password}</connection.password> |
| </properties> |
| <repositories> |
| <repository> |
| <id>oracle.repository</id> |
| <name>Oracle Repository</name> |
| <url>${oracle.maven.repo}</url> |
| <layout>default</layout> |
| <snapshots> |
| <enabled>false</enabled> |
| </snapshots> |
| <releases> |
| <enabled>true</enabled> |
| <checksumPolicy>ignore</checksumPolicy> |
| </releases> |
| </repository> |
| </repositories> |
| </profile> |
| </profiles> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.openjpa</groupId> |
| <artifactId>openjpa-jdbc-5</artifactId> |
| <version>${pom.version}</version> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.openjpa</groupId> |
| <artifactId>openjpa-persistence</artifactId> |
| <version>${pom.version}</version> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>commons-dbcp</groupId> |
| <artifactId>commons-dbcp</artifactId> |
| <version>1.2.1</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>commons-collections</groupId> |
| <artifactId>commons-collections</artifactId> |
| <version>3.2.2</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>test-compile</phase> |
| <configuration> |
| <tasks> |
| <ant antfile="src/main/ant/enhancer.xml" target="enhance" inheritRefs="true"> |
| <!-- |
| InheritAll doesn't seem to work. Pass in |
| properties manually. |
| --> |
| <property name="maven.test.skip" value="${maven.test.skip}" /> |
| <property name="test" value="${test}" /> |
| <property name="outdir" value="${project.build.outputDirectory}" /> |
| <property name="project.build.testOutputDirectory" value="${project.build.testOutputDirectory}" /> |
| <property name="openjpa.Log" value="${openjpa.Log}" /> |
| </ant> |
| </tasks> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <argLine>${test.jvm.arguments}</argLine> |
| <systemProperties> |
| <property> |
| <name>openjpa.Log</name> |
| <value>${openjpa.Log}</value> |
| </property> |
| <property> |
| <name>openjpa.ConnectionDriverName</name> |
| <value>org.apache.commons.dbcp.BasicDataSource</value> |
| </property> |
| <property> |
| <name>derby.stream.error.file</name> |
| <value>target/derby.log</value> |
| </property> |
| <property> |
| <name>derby.locks.deadlockTimeout</name> |
| <value>${derby.locks.deadlockTimeout}</value> |
| </property> |
| <property> |
| <name>derby.locks.waitTimeout</name> |
| <value>${derby.locks.waitTimeout}</value> |
| </property> |
| <property> |
| <name>openjpa.ConnectionProperties</name> |
| <value>DriverClassName=${connection.driver.name},Url=${connection.url},Username=${connection.username},Password=${connection.password},${dbcp.args}</value> |
| </property> |
| </systemProperties> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |