diff --git a/dbws/dbws.install/.classpath b/dbws/dbws.install/.classpath
new file mode 100644
index 0000000..0a1dadd
--- /dev/null
+++ b/dbws/dbws.install/.classpath
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" output="target/classes" path="src/main/java">
+		<attributes>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
+		<attributes>
+			<attribute name="optional" value="true"/>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
+		<attributes>
+			<attribute name="maven.pomderived" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/dbws/dbws.install/.project b/dbws/dbws.install/.project
new file mode 100644
index 0000000..faba9c2
--- /dev/null
+++ b/dbws/dbws.install/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>dbws.install</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>
diff --git a/dbws/dbws.install/.settings/org.eclipse.core.resources.prefs b/dbws/dbws.install/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..f9fe345
--- /dev/null
+++ b/dbws/dbws.install/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+encoding//src/main/java=UTF-8
+encoding//src/test/java=UTF-8
+encoding/<project>=UTF-8
diff --git a/dbws/dbws.install/.settings/org.eclipse.jdt.core.prefs b/dbws/dbws.install/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..abec6ca
--- /dev/null
+++ b/dbws/dbws.install/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/dbws/dbws.install/.settings/org.eclipse.m2e.core.prefs b/dbws/dbws.install/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/dbws/dbws.install/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/dbws/dbws.install/config.properties b/dbws/dbws.install/config.properties
new file mode 100644
index 0000000..a0d285c
--- /dev/null
+++ b/dbws/dbws.install/config.properties
@@ -0,0 +1,2 @@
+eclipselink.version=2.4.2-RC1
+eclipselink.home=/Users/djclarke/java/eclipse/eclipselink_2.4
\ No newline at end of file
diff --git a/dbws/dbws.install/pom.xml b/dbws/dbws.install/pom.xml
new file mode 100644
index 0000000..9c65e5d
--- /dev/null
+++ b/dbws/dbws.install/pom.xml
@@ -0,0 +1,138 @@
+<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/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>eclipselink.example.dbws</groupId>
+	<artifactId>dbws.install</artifactId>
+	<version>2.4.2-SNAPSHOT</version>
+	<packaging>pom</packaging>
+
+	<build>
+		<defaultGoal>install</defaultGoal>
+
+		<plugins>
+
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-install-plugin</artifactId>
+				<version>2.3.1</version>
+				<executions>
+					<execution>
+						<id>dbwsutils</id>
+						<phase>install</phase>
+						<goals>
+							<goal>install-file</goal>
+						</goals>
+						<configuration>
+							<file>${eclipselink.home}/utils/dbws/eclipselink-dbwsutils.jar</file>
+							<packaging>jar</packaging>
+							<groupId>org.eclipse.persistence</groupId>
+							<artifactId>dbws.builder</artifactId>
+							<version>${eclipselink.version}</version>
+						</configuration>
+					</execution>
+					<execution>
+						<id>oracleddlparser</id>
+						<phase>install</phase>
+						<goals>
+							<goal>install-file</goal>
+						</goals>
+						<configuration>
+							<file>${eclipselink.home}/utils/dbws/org.eclipse.persistence.oracleddlparser_1.0.0.v20121122.jar</file>
+							<sources>${eclipselink.home}/utils/dbws/org.eclipse.persistence.oracleddlparser.source_1.0.0.v20121122.jar</sources>
+							<packaging>jar</packaging>
+							<groupId>org.eclipse.persistence</groupId>
+							<artifactId>oracleddlparser</artifactId>
+							<version>${eclipselink.version}</version>
+						</configuration>
+					</execution>
+					<execution>
+						<id>javax.wsdl</id>
+						<phase>install</phase>
+						<goals>
+							<goal>install-file</goal>
+						</goals>
+						<configuration>
+							<file>${eclipselink.home}/utils/dbws/javax.wsdl_1.6.2.v201012040545.jar</file>
+							<packaging>jar</packaging>
+							<groupId>org.eclipse.persistence</groupId>
+							<artifactId>javax.wsdl</artifactId>
+							<version>1.6.2</version>
+						</configuration>
+					</execution>
+					<execution>
+						<id>javax.servlet</id>
+						<phase>install</phase>
+						<goals>
+							<goal>install-file</goal>
+						</goals>
+						<configuration>
+							<file>${eclipselink.home}/utils/dbws/javax.servlet_2.4.0.v200806031604.jar</file>
+							<packaging>jar</packaging>
+							<groupId>org.eclipse.persistence</groupId>
+							<artifactId>javax.servlet</artifactId>
+							<version>2.4.0</version>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-clean-plugin</artifactId>
+				<version>2.4.1</version>
+				<configuration>
+					<filesets>
+						<fileset>
+							<directory>${settings.localRepository}/org/eclipse/persistence/dbws.builder</directory>
+							<includes>
+								<include>**/*</include>
+							</includes>
+							<followSymlinks>false</followSymlinks>
+						</fileset>
+						<fileset>
+							<directory>${settings.localRepository}/org/eclipse/persistence/oracleddlparser</directory>
+							<includes>
+								<include>**/*</include>
+							</includes>
+							<followSymlinks>false</followSymlinks>
+						</fileset>
+						<fileset>
+							<directory>${settings.localRepository}/org/eclipse/persistence/javax.wsdl</directory>
+							<includes>
+								<include>**/*</include>
+							</includes>
+							<followSymlinks>false</followSymlinks>
+						</fileset>
+						<fileset>
+							<directory>${settings.localRepository}/org/eclipse/persistence/javax.servlet</directory>
+							<includes>
+								<include>**/*</include>
+							</includes>
+							<followSymlinks>false</followSymlinks>
+						</fileset>
+					</filesets>
+				</configuration>
+			</plugin>
+
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>properties-maven-plugin</artifactId>
+				<version>1.0-alpha-2</version>
+				<executions>
+					<execution>
+						<phase>initialize</phase>
+						<goals>
+							<goal>read-project-properties</goal>
+						</goals>
+						<configuration>
+							<files>
+								<file>${basedir}/config.properties</file>
+							</files>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+
+		</plugins>
+	</build>
+</project>
\ No newline at end of file
diff --git a/dbws/dbws.install/src/main/java/foo/App.java b/dbws/dbws.install/src/main/java/foo/App.java
new file mode 100644
index 0000000..b9f9e6a
--- /dev/null
+++ b/dbws/dbws.install/src/main/java/foo/App.java
@@ -0,0 +1,13 @@
+package foo;
+
+/**
+ * Hello world!
+ *
+ */
+public class App 
+{
+    public static void main( String[] args )
+    {
+        System.out.println( "Hello World!" );
+    }
+}
diff --git a/dbws/dbws.install/src/test/java/foo/AppTest.java b/dbws/dbws.install/src/test/java/foo/AppTest.java
new file mode 100644
index 0000000..7529e33
--- /dev/null
+++ b/dbws/dbws.install/src/test/java/foo/AppTest.java
@@ -0,0 +1,38 @@
+package foo;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest 
+    extends TestCase
+{
+    /**
+     * Create the test case
+     *
+     * @param testName name of the test case
+     */
+    public AppTest( String testName )
+    {
+        super( testName );
+    }
+
+    /**
+     * @return the suite of tests being tested
+     */
+    public static Test suite()
+    {
+        return new TestSuite( AppTest.class );
+    }
+
+    /**
+     * Rigourous Test :-)
+     */
+    public void testApp()
+    {
+        assertTrue( true );
+    }
+}
diff --git a/dbws/install-builder/install.sh b/dbws/install-builder/install.sh
deleted file mode 100755
index b0a41dd..0000000
--- a/dbws/install-builder/install.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-mvn install:install-file -Dpackaging=jar -Dfile=eclipselink-dbwsutils.jar -DgroupId=org.eclipse.persistence -DartifactId=dbws.builder -Dversion="2.4.2-RC1"
-
-mvn install:install-file -Dpackaging=jar -Dfile=org.eclipse.persistence.oracleddlparser_1.0.0.v20121122.jar -DgroupId=org.eclipse.persistence -DartifactId=oracleddlparser -Dversion="2.4.2-RC1" -DsourceFile=org.eclipse.persistence.oracleddlparser.source_1.0.0.v20121122.jar
-
-mvn install:install-file -Dpackaging=jar -Dfile=javax.wsdl_1.6.2.v201012040545.jar -DgroupId=org.eclipse.persistence -DartifactId=javax.wsdl -Dversion="1.6.2"
diff --git a/dbws/install-builder/pom.xml b/dbws/install-builder/pom.xml
deleted file mode 100644
index b1f7ca3..0000000
--- a/dbws/install-builder/pom.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<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/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>com.oracle.toplink</groupId>
-	<artifactId>maven-install</artifactId>
-	<version>12.1.2</version>
-	<packaging>pom</packaging>
-
-	<properties>
-		<oracle.version>${project.version}-0-0</oracle.version>
-	</properties>
-
-	<build>
-		<defaultGoal>com.oracle.maven:oracle-maven-sync:push</defaultGoal>
-
-		<plugins>
-
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-install-plugin</artifactId>
-				<version>2.3.1</version>
-				<configuration>
-					<pomFile>${oracleHome}/oracle_common/plugins/maven/com/oracle/maven/oracle-maven-sync/${project.version}/oracle-maven-sync.${project.version}.pom</pomFile>
-					<file>${oracleHome}/oracle_common/plugins/maven/com/oracle/maven/oracle-maven-sync/${project.version}/oracle-maven-sync.${project.version}.jar</file>
-				</configuration>
-			</plugin>
-
-			<plugin>
-				<groupId>com.oracle.maven</groupId>
-				<artifactId>oracle-maven-sync</artifactId>
-				<version>${oracle.version}</version>
-				<configuration>
-					<oracleHome>${oracleHome}</oracleHome>
-					<testOnly>false</testOnly>
-					<failOnError>false</failOnError>
-				</configuration>
-			</plugin>
-
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-clean-plugin</artifactId>
-				<version>2.4.1</version>
-				<configuration>
-					<filesets>
-						<fileset>
-							<directory>${settings.localRepository}/org/eclipse/persistence/</directory>
-							<includes>
-								<include>**/*</include>
-							</includes>
-							<followSymlinks>false</followSymlinks>
-						</fileset>
-					</filesets>
-				</configuration>
-			</plugin>
-
-		</plugins>
-	</build>
-</project>
\ No newline at end of file
