You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by mi...@apache.org on 2009/02/24 20:54:36 UTC

svn commit: r747531 - /openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml

Author: mikedd
Date: Tue Feb 24 19:54:35 2009
New Revision: 747531

URL: http://svn.apache.org/viewvc?rev=747531&view=rev
Log:
OPENJPA-881 OPENJPA-876. Merging to 1.0.x

Modified:
    openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml

Modified: openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml
URL: http://svn.apache.org/viewvc/openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml?rev=747531&r1=747530&r2=747531&view=diff
==============================================================================
--- openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml (original)
+++ openjpa/branches/1.0.x/openjpa-persistence-jdbc/pom.xml Tue Feb 24 19:54:35 2009
@@ -35,6 +35,15 @@
     </parent>
     <properties>
         <openjpa.loglevel>INFO</openjpa.loglevel>
+        <!-- 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>
     </properties>
     <profiles>
 
@@ -49,45 +58,18 @@
                 <dependency>
                     <groupId>org.apache.derby</groupId>
                     <artifactId>derby</artifactId>
-                    <version>10.2.2.0</version>
                     <scope>test</scope>
+                    <version>10.2.2.0</version>
                 </dependency>
             </dependencies>
-
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <argLine>-Xmx500m</argLine>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</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>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=org.apache.derby.jdbc.EmbeddedDriver,Url=jdbc:derby:target/database/openjpa-derby-database;create=true,MaxActive=100,MaxIdle=0,MaxWait=10000,TestOnBorrow=true</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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>
@@ -100,35 +82,14 @@
                     <scope>test</scope>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=org.hsqldb.jdbcDriver,Url=jdbc:hsqldb:target/database/openjpa-hsqldb-database;create=true,MaxActive=100,MaxWait=10000,TestOnBorrow=true</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+             <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>
@@ -141,35 +102,14 @@
                     <scope>test</scope>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=com.mysql.jdbc.Driver,Url=${openjpa.mysql.url},MaxActive=100,MaxWait=10000,TestOnBorrow=true,Username=${openjpa.mysql.username},Password=${openjpa.mysql.password}</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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>
@@ -182,35 +122,14 @@
                     <scope>test</scope>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=org.postgresql.Driver,Url=${openjpa.postgresql.url},MaxActive=100,MaxWait=10000,TestOnBorrow=true,Username=${openjpa.postgresql.username},Password=${openjpa.postgresql.password}</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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>
@@ -223,35 +142,14 @@
                     <scope>test</scope>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=net.sourceforge.jtds.jdbc.Driver,Url=${openjpa.sqlserver.url},MaxActive=100,MaxWait=10000,TestOnBorrow=true,Username=${openjpa.sqlserver.username},Password=${openjpa.sqlserver.password}</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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>
@@ -264,32 +162,12 @@
                     <scope>test</scope>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=net.sourceforge.jtds.jdbc.Driver,Url=${openjpa.sybase.url},MaxActive=100,MaxWait=10000,TestOnBorrow=true,Username=${openjpa.sybase.username},Password=${openjpa.sybase.password}</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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 -->
@@ -314,38 +192,191 @@
                     <systemPath>${openjpa.custom.driverjar}</systemPath>
                 </dependency>
             </dependencies>
-            <build>
-                <pluginManagement>
-                    <plugins>
-                        <plugin>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-surefire-plugin</artifactId>
-                            <configuration>
-                                <systemProperties>
-                                    <property>
-                                        <name>openjpa.Log</name>
-                                        <value>DefaultLevel=${openjpa.loglevel}</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionDriverName</name>
-                                        <value>org.apache.commons.dbcp.BasicDataSource</value>
-                                    </property>
-                                    <property>
-                                        <name>openjpa.ConnectionProperties</name>
-                                        <value>DriverClassName=${openjpa.custom.driverclass},Url=${openjpa.custom.url},MaxActive=100,MaxWait=10000,TestOnBorrow=true,Username=${openjpa.custom.username},Password=${openjpa.custom.password}</value>
-                                    </property>
-                                </systemProperties>
-                            </configuration>
-                        </plugin>
-                    </plugins>
-                </pluginManagement>
-            </build>
+            <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>
@@ -401,6 +432,31 @@
                     </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>DefaultLevel=${openjpa.loglevel}</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>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>