Make multiple TCK instances running on the same machin.
diff --git a/analyze.pl b/analyze.pl
index c615097..070ad40 100755
--- a/analyze.pl
+++ b/analyze.pl
@@ -27,7 +27,7 @@
 	# Maybe remove some details so failures can be more easily grouped
 	
 	$t =~ s,(Could not load WEB-INF/classes/).*(.class),${1}.....${2},;
-	$t =~ s,(http://localhost:8080).*(_vehicle_[^/]+)/.*,$1/.....$2.....,;
+	$t =~ s,(http://localhost:).*(_vehicle_[^/]+)/.*,$1/.....$2.....,;
 	$t =~ s,(404 Not Found for http://localhost:8080/jsf_).*,$1.....,;
 	$t =~ s,(Module failed validation.).*,$1.....,;
 	$t =~ s,(No provider available for resource-ref 'null' of type 'com.sun.ts.tests.common.connector.whitebox.TSConnectionFactory').*,$1.....,;
diff --git a/pom.xml b/pom.xml
index feeebb5..3f7b5c9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,9 +62,6 @@
 
     <!-- externalized ports for tx.jte file -->
     <webcontainer.default.host>localhost</webcontainer.default.host>
-    <webcontainer.default.port>8080</webcontainer.default.port>
-    <webcontainer.default.ssl.port>8443</webcontainer.default.ssl.port>
-    <webcontainer.default.clientcert.port>8444</webcontainer.default.clientcert.port>
     <webcontainer.ri.host>localhost</webcontainer.ri.host>
     <webcontainer.ri.port>8000</webcontainer.ri.port>
     <orb.default.host>localhost</orb.default.host>
@@ -532,7 +529,7 @@
                 </goals>
                 <configuration>
                   <driver>org.apache.derby.jdbc.ClientDriver</driver>
-                  <url>jdbc:derby://localhost:1527/derbydb;create=true</url>
+                  <url>jdbc:derby://localhost:${derby.server.port}/derbydb;create=true</url>
                   <username>cts</username>
                   <password>cts</password>
                   <autocommit>true</autocommit>
@@ -618,6 +615,30 @@
 
       <plugin>
         <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <version>1.7</version>
+        <executions>
+          <execution>
+            <id>reserve-network-port</id>
+            <phase>pre-integration-test</phase>
+            <goals>
+              <goal>reserve-network-port</goal>
+            </goals>
+            <configuration>
+              <portNames>
+                <portName>webcontainer.default.port</portName>
+                <portName>webcontainer.default.ssl.port</portName>
+                <portName>webcontainer.default.clientcert.port</portName>
+                <portName>webcontainer.default.shutdown.port</portName>
+                <portName>derby.server.port</portName>
+              </portNames>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
         <artifactId>exec-maven-plugin</artifactId>
         <version>1.1</version>
         <executions>
@@ -630,6 +651,9 @@
           </execution>
         </executions>
         <configuration>
+          <arguments>
+            <argument>${derby.server.port}</argument>
+          </arguments>
           <mainClass>org.apache.openejb.cts.DerbyRunner</mainClass>
         </configuration>
       </plugin>
diff --git a/src/test/resources/testsuite.properties b/src/test/resources/testsuite.properties
index 436ca0c..03669f1 100644
--- a/src/test/resources/testsuite.properties
+++ b/src/test/resources/testsuite.properties
@@ -51,7 +51,7 @@
         ${JAVA_HOME}/bin/java \
         ${command.testExecuteAppClient.debugopts} \
         -Dopenejb.server.uri=${openejb.server.uri} \
-        -DResource/javax.sql.DataSource=datasource:org.apache.derby.jdbc.ClientDataSource:jdbc\:derby\://localhost\:1527/${derby.dbName};create\=true;user=${derby.user};password=${derby.passwd} \
+        -DResource/javax.sql.DataSource=datasource:org.apache.derby.jdbc.ClientDataSource:jdbc\:derby\://localhost\:${derby.server.port}/${derby.dbName};create\=true;user=${derby.user};password=${derby.passwd} \
         -DResource/javax.jms.ConnectionFactory=connectionfactory:org.apache.activemq.ActiveMQConnectionFactory:tcp://localhost:61616 \
         -DResource/org.omg.CORBA.ORB=orb:/ \
         -Djdbc/DB1=link:Resource/javax.sql.DataSource \
@@ -74,7 +74,7 @@
         -Djava.endorsed.dirs=${openejb.home}/endorsed \
         -DDB1=new://Resource?type=DataSource \
         -DDB1.JdbcDriver=org.apache.derby.jdbc.ClientDriver \
-        -DDB1.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true \
+        -DDB1.JdbcUrl=jdbc:derby://localhost:${derby.server.port}/derbydb;create=true \
         -DDB1.UserName=cts \
         -DDB1.Password=cts \
         -DsingletonContainer=new://Container?type=SINGLETON&AccessTimeout=2minutes \
@@ -111,11 +111,11 @@
 hsql.url=jdbc\:hsqldb\:hsql\://localhost/${hsql.dbName}
 hsql.user=cts
 
-derby.url=jdbc\:derby\://localhost\:1527/${derby.dbName};create\=true
+derby.url=jdbc\:derby\://localhost\:${derby.server.port}/${derby.dbName};create\=true
 derby.poolName=cts-derby-pool
 derby.user=cts
 derby.properties=DatabaseName\="${derby.dbName}"\:user\=${derby.user}\:password\=${derby.passwd}
-derby.port=1527
+derby.port=${derby.server.port}
 derby.dataSource=org.apache.derby.jdbc.ClientDataSource
 derby.pool.url='jdbc\\\:derby\\\:${derby.dbName}\\;create\=true'
 derby.server=${orb.host}
@@ -161,6 +161,7 @@
 openejb.version=%openejb.version%
 openejb.lib=%openejb.lib%
 openejb.server.uri=%openejb.server.uri%
+derby.server.port=%derby.server.port%
 
 orb.host.ri=%orb.ri.host%
 orb.host=%orb.default.host%
diff --git a/src/test/script/openejb/tck/commands/CommandSupport.groovy b/src/test/script/openejb/tck/commands/CommandSupport.groovy
index a87bdeb..2228da4 100644
--- a/src/test/script/openejb/tck/commands/CommandSupport.groovy
+++ b/src/test/script/openejb/tck/commands/CommandSupport.groovy
@@ -157,12 +157,13 @@
         def javaeetckHome = get('javaee.cts.home')
         def javaeeRiHome = get('javaee.ri.home')
         def webcontainer = get('webcontainer')
+        def tomeeHttpPort = get('webcontainer.default.port')
 
         def openejbLib
         def openejbServerUri
         if (webcontainer.startsWith("tom")) {
             openejbLib = "${openejbHome}/lib"
-            openejbServerUri = "http://localhost:8080/tomee/ejb"
+            openejbServerUri = "http://localhost:${tomeeHttpPort}/tomee/ejb"
         } else {
             openejbLib = "${openejbHome}/lib"
             openejbServerUri = "ejbd://localhost:4201"
diff --git a/src/test/script/openejb/tck/commands/JavaTestCommand.groovy b/src/test/script/openejb/tck/commands/JavaTestCommand.groovy
index 00e386b..cb94df7 100644
--- a/src/test/script/openejb/tck/commands/JavaTestCommand.groovy
+++ b/src/test/script/openejb/tck/commands/JavaTestCommand.groovy
@@ -206,6 +206,7 @@
                 sysproperty(key: "openejb.server.uri", value: require('openejb.server.uri'))
                 sysproperty(key: "openejb.servicemanager.enabled", value: true)
 
+                sysproperty(key: "server.shutdown.port", value: require('webcontainer.default.shutdown.port'))
                 sysproperty(key: "openejb.home", file: openejbHome)
                 sysproperty(key: "com.sun.ejb.home", file: openejbHome)
                 sysproperty(key: "TS_HOME", file: javaeeCtsHome)
diff --git a/src/test/script/openejb/tck/commands/SetupCommand.groovy b/src/test/script/openejb/tck/commands/SetupCommand.groovy
index 3e34779..e5f72fb 100644
--- a/src/test/script/openejb/tck/commands/SetupCommand.groovy
+++ b/src/test/script/openejb/tck/commands/SetupCommand.groovy
@@ -262,15 +262,32 @@
         //
         // Copy openejb configuration files into server
         //
-        ant.copy(todir: "${openejbHome}", overwrite: true) {
+        ant.copy(todir: "${openejbHome}", filtering: true, overwrite: true) {
+
+            def map = [:]
+            map.putAll(System.properties)
+            map.putAll(project.properties)
+
+            def wcFiles
+
             if ("tomcat".equals(System.getProperty("webcontainer"))) {
-                fileset(dir: "${project.basedir}/src/test/tomcat")
+                wcFiles = "${project.basedir}/src/test/tomcat"
+
             } else if ("tomee".equals(System.getProperty("webcontainer"))) {
-                fileset(dir: "${project.basedir}/src/test/tomee")
+                wcFiles = "${project.basedir}/src/test/tomee"
+
             } else if ("tomee-plus".equals(System.getProperty("webcontainer"))) {
-                fileset(dir: "${project.basedir}/src/test/tomee-plus")
+                wcFiles = "${project.basedir}/src/test/tomee-plus"
+
             } else {
-                fileset(dir: "${project.basedir}/src/test/openejb")
+                wcFiles = "${project.basedir}/src/test/openejb"
+            }
+
+            fileset(dir: wcFiles)
+            filterset(begintoken: '%', endtoken: '%') {
+                map.each {
+                    filter(token: it.key, value: it.value)
+                }
             }
         }
 
diff --git a/src/test/tomee-plus/conf/server.xml b/src/test/tomee-plus/conf/server.xml
index ec63003..032c4ce 100644
--- a/src/test/tomee-plus/conf/server.xml
+++ b/src/test/tomee-plus/conf/server.xml
@@ -19,7 +19,7 @@
      define subcomponents such as "Valves" at this level.
      Documentation at /docs/config/server.html
  -->
-<Server port="8005" shutdown="SHUTDOWN">
+<Server port="%webcontainer.default.shutdown.port%" shutdown="SHUTDOWN">
   <!-- OpenEJB plugin for Tomcat -->
   <Listener className="org.apache.tomee.catalina.ServerListener" />
   <!-- Security listener. Documentation at /docs/config/listeners.html
@@ -69,9 +69,9 @@
          APR (HTTP/AJP) Connector: /docs/apr.html
          Define a non-SSL HTTP/1.1 Connector on port 8080
     -->
-    <Connector port="8080" protocol="HTTP/1.1"
+    <Connector port="%webcontainer.default.port%" protocol="HTTP/1.1"
                connectionTimeout="20000"
-               redirectPort="8443" />
+               redirectPort="%webcontainer.default.ssl.port%" />
     <!-- A "Connector" using the shared thread pool-->
     <!--
     <Connector executor="tomcatThreadPool"
@@ -83,14 +83,14 @@
          This connector uses the JSSE configuration, when using APR, the
          connector should be using the OpenSSL style configuration
          described in the APR documentation -->
-    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
+    <Connector port="%webcontainer.default.ssl.port%" protocol="HTTP/1.1" SSLEnabled="true"
                maxThreads="150" scheme="https" secure="true"
                clientAuth="false" sslProtocol="TLS"
                keystoreFile="conf/clientcert.jks" keystorePass="changeit" keyAlias="cts"
                truststoreFile="conf/ssl-truststore" truststorePass="changeit" />
 
     <!-- Define an AJP 1.3 Connector on port 8009 -->
-    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
+    <!-- <Connector port="%tomee.ajp.port%" protocol="AJP/1.3" redirectPort="%tomee.ssl.port%" /> -->
 
 
     <!-- An Engine represents the entry point (within Catalina) that processes
diff --git a/src/test/tomee-plus/conf/system.properties b/src/test/tomee-plus/conf/system.properties
index f39cce2..c00c657 100644
--- a/src/test/tomee-plus/conf/system.properties
+++ b/src/test/tomee-plus/conf/system.properties
@@ -21,27 +21,27 @@
 RESOURCE.whitebox-xa-param|poolMaxSize=100
 RESOURCE.whitebox-xa|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-notx-param|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-notx-param|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-notx-param|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-notx-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-notx|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-notx|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-notx|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-notx|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-tx-param|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-tx-param|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-tx-param|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-tx-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-tx|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-tx|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-tx|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-tx|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-xa-param|XAProps=JdbcUrl="jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts"
+RESOURCE.JDBCwhitebox-xa-param|XAProps=JdbcUrl="jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts"
 RESOURCE.JDBCwhitebox-xa-param|XADataSourceName=org.apache.openejb.cts.DriverManagerXADataSource
 RESOURCE.JDBCwhitebox-xa-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-xa|XAProps=JdbcUrl='jdbc:jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts'
+RESOURCE.JDBCwhitebox-xa|XAProps=JdbcUrl='jdbc:jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts'
 RESOURCE.JDBCwhitebox-xa|XADataSourceName=org.apache.openejb.cts.DriverManagerXADataSource
 RESOURCE.JDBCwhitebox-xa|poolMaxSize=100
 
@@ -75,42 +75,42 @@
 
 
 compds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-compds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+compds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 compds.UserName=cts
 compds.Password=cts
 
 compds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-compds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+compds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 compds2.UserName=cts
 compds2.Password=cts
 
 defaultds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-defaultds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+defaultds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 defaultds.UserName=cts
 defaultds.Password=cts
 
 defaultds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-defaultds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+defaultds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 defaultds2.UserName=cts
 defaultds2.Password=cts
 
 module/env/moduleds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-module/env/moduleds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+module/env/moduleds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 module/env/moduleds.UserName=cts
 module/env/moduleds.Password=cts
 
 module/env/moduleds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-module/env/moduleds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+module/env/moduleds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 module/env/moduleds2.UserName=cts
 module/env/moduleds2.Password=cts
 
 app/env/appds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-app/env/appds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+app/env/appds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 app/env/appds2.UserName=cts
 app/env/appds2.Password=cts
 
 app/env/appds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-app/env/appds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+app/env/appds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 app/env/appds.UserName=cts
 app/env/appds.Password=cts
 
@@ -118,7 +118,7 @@
 #for n in app/env/appds2; do
 #cat <<EOF
 #$n.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-#$n.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+#$n.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 #$n.UserName=cts
 #$n.Password=cts
 #
diff --git a/src/test/tomee-plus/conf/tomee.xml b/src/test/tomee-plus/conf/tomee.xml
index 62b2ad2..835ae18 100644
--- a/src/test/tomee-plus/conf/tomee.xml
+++ b/src/test/tomee-plus/conf/tomee.xml
@@ -53,14 +53,14 @@
 <!-- That should be also specified in the system.properties file of the target environment -->
 <Resource id="jdbc/DB1" type="DataSource">
     JdbcDriver org.apache.derby.jdbc.ClientDriver
-    JdbcUrl jdbc:derby://localhost:1527/derbydb;create=true
+    JdbcUrl jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
     UserName     cts
     Password     cts
 </Resource>
 
 <Resource id="jdbc/DB1Unmanaged" type="DataSource">
     JdbcDriver org.apache.derby.jdbc.ClientDriver
-    JdbcUrl jdbc:derby://localhost:1527/derbydb;create=true
+    JdbcUrl jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
     UserName     cts
     Password     cts
     JtaManaged  false
diff --git a/src/test/tomee/conf/server.xml b/src/test/tomee/conf/server.xml
index ec63003..032c4ce 100644
--- a/src/test/tomee/conf/server.xml
+++ b/src/test/tomee/conf/server.xml
@@ -19,7 +19,7 @@
      define subcomponents such as "Valves" at this level.
      Documentation at /docs/config/server.html
  -->
-<Server port="8005" shutdown="SHUTDOWN">
+<Server port="%webcontainer.default.shutdown.port%" shutdown="SHUTDOWN">
   <!-- OpenEJB plugin for Tomcat -->
   <Listener className="org.apache.tomee.catalina.ServerListener" />
   <!-- Security listener. Documentation at /docs/config/listeners.html
@@ -69,9 +69,9 @@
          APR (HTTP/AJP) Connector: /docs/apr.html
          Define a non-SSL HTTP/1.1 Connector on port 8080
     -->
-    <Connector port="8080" protocol="HTTP/1.1"
+    <Connector port="%webcontainer.default.port%" protocol="HTTP/1.1"
                connectionTimeout="20000"
-               redirectPort="8443" />
+               redirectPort="%webcontainer.default.ssl.port%" />
     <!-- A "Connector" using the shared thread pool-->
     <!--
     <Connector executor="tomcatThreadPool"
@@ -83,14 +83,14 @@
          This connector uses the JSSE configuration, when using APR, the
          connector should be using the OpenSSL style configuration
          described in the APR documentation -->
-    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
+    <Connector port="%webcontainer.default.ssl.port%" protocol="HTTP/1.1" SSLEnabled="true"
                maxThreads="150" scheme="https" secure="true"
                clientAuth="false" sslProtocol="TLS"
                keystoreFile="conf/clientcert.jks" keystorePass="changeit" keyAlias="cts"
                truststoreFile="conf/ssl-truststore" truststorePass="changeit" />
 
     <!-- Define an AJP 1.3 Connector on port 8009 -->
-    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
+    <!-- <Connector port="%tomee.ajp.port%" protocol="AJP/1.3" redirectPort="%tomee.ssl.port%" /> -->
 
 
     <!-- An Engine represents the entry point (within Catalina) that processes
diff --git a/src/test/tomee/conf/system.properties b/src/test/tomee/conf/system.properties
index 29ab556..e9e66a7 100644
--- a/src/test/tomee/conf/system.properties
+++ b/src/test/tomee/conf/system.properties
@@ -21,27 +21,27 @@
 RESOURCE.whitebox-xa-param|poolMaxSize=100
 RESOURCE.whitebox-xa|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-notx-param|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-notx-param|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-notx-param|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-notx-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-notx|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-notx|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-notx|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-notx|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-tx-param|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-tx-param|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-tx-param|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-tx-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-tx|ConnectionURL=jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts
+RESOURCE.JDBCwhitebox-tx|ConnectionURL=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts
 RESOURCE.JDBCwhitebox-tx|DriverName=org.apache.derby.jdbc.ClientDriver
 RESOURCE.JDBCwhitebox-tx|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-xa-param|XAProps=JdbcUrl="jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts"
+RESOURCE.JDBCwhitebox-xa-param|XAProps=JdbcUrl="jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts"
 RESOURCE.JDBCwhitebox-xa-param|XADataSourceName=org.apache.openejb.cts.DriverManagerXADataSource
 RESOURCE.JDBCwhitebox-xa-param|poolMaxSize=100
 
-RESOURCE.JDBCwhitebox-xa|XAProps=JdbcUrl='jdbc:jdbc:derby://localhost:1527/derbydb;create=true;user=cts;password=cts'
+RESOURCE.JDBCwhitebox-xa|XAProps=JdbcUrl='jdbc:jdbc:derby://localhost:%derby.server.port%/derbydb;create=true;user=cts;password=cts'
 RESOURCE.JDBCwhitebox-xa|XADataSourceName=org.apache.openejb.cts.DriverManagerXADataSource
 RESOURCE.JDBCwhitebox-xa|poolMaxSize=100
 
@@ -76,42 +76,42 @@
 old-dd-whitebox-xa.rar.moduleId=oldwhitebox-xa
 
 compds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-compds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+compds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 compds.UserName=cts
 compds.Password=cts
 
 compds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-compds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+compds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 compds2.UserName=cts
 compds2.Password=cts
 
 defaultds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-defaultds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+defaultds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 defaultds.UserName=cts
 defaultds.Password=cts
 
 defaultds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-defaultds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+defaultds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 defaultds2.UserName=cts
 defaultds2.Password=cts
 
 module/env/moduleds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-module/env/moduleds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+module/env/moduleds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 module/env/moduleds.UserName=cts
 module/env/moduleds.Password=cts
 
 module/env/moduleds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-module/env/moduleds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+module/env/moduleds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 module/env/moduleds2.UserName=cts
 module/env/moduleds2.Password=cts
 
 app/env/appds2.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-app/env/appds2.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+app/env/appds2.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 app/env/appds2.UserName=cts
 app/env/appds2.Password=cts
 
 app/env/appds.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-app/env/appds.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+app/env/appds.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 app/env/appds.UserName=cts
 app/env/appds.Password=cts
 
@@ -119,7 +119,7 @@
 #for n in app/env/appds2; do
 #cat <<EOF
 #$n.JdbcDriver=org.apache.derby.jdbc.ClientDriver
-#$n.JdbcUrl=jdbc:derby://localhost:1527/derbydb;create=true
+#$n.JdbcUrl=jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
 #$n.UserName=cts
 #$n.Password=cts
 #
diff --git a/src/test/tomee/conf/tomee.xml b/src/test/tomee/conf/tomee.xml
index 62b2ad2..835ae18 100644
--- a/src/test/tomee/conf/tomee.xml
+++ b/src/test/tomee/conf/tomee.xml
@@ -53,14 +53,14 @@
 <!-- That should be also specified in the system.properties file of the target environment -->
 <Resource id="jdbc/DB1" type="DataSource">
     JdbcDriver org.apache.derby.jdbc.ClientDriver
-    JdbcUrl jdbc:derby://localhost:1527/derbydb;create=true
+    JdbcUrl jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
     UserName     cts
     Password     cts
 </Resource>
 
 <Resource id="jdbc/DB1Unmanaged" type="DataSource">
     JdbcDriver org.apache.derby.jdbc.ClientDriver
-    JdbcUrl jdbc:derby://localhost:1527/derbydb;create=true
+    JdbcUrl jdbc:derby://localhost:%derby.server.port%/derbydb;create=true
     UserName     cts
     Password     cts
     JtaManaged  false