diff --git a/.gitignore b/.gitignore
index 86fc67f..3fbb103 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,8 +1,13 @@
+*/src/main/resources/META-INF/MANIFEST.MF
 */src/test/resources/META-INF/TEST.MF
 target
 integration-repo
 ivy-cache
-derby.log
-*/work
+.ant-targets-build.xml
 user-ivy.properties
-*/bin/*
+bin/
+build/
+.settings/
+.project
+.classpath
+
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..637ca9c
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,296 @@
+project(':web:org.eclipse.virgo.web.core') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+        testCompile group: "org.apache.commons", name: "com.springsource.org.apache.commons.logging", version: commonsLoggingVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.springframework", name: "org.springframework.test", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        testCompile project(':test:org.eclipse.virgo.test.stubs')
+        testCompile project(':kernel:org.eclipse.virgo.kernel.stubs')
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi.services", version: osgiServicesVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.web.core", version: geminiWebVersion, configuration: "compile", ext: "jar"
+
+        compile project(':util:org.eclipse.virgo.util.common')
+        compile project(':util:org.eclipse.virgo.util.osgi.manifest')
+        compile project(':medic:org.eclipse.virgo.medic')
+        compile project(':nano:org.eclipse.virgo.nano.core')
+        compile project(':nano:org.eclipse.virgo.nano.deployer.api')
+        compile project(':repository:org.eclipse.virgo.repository')
+        compile project(':kernel:org.eclipse.virgo.kernel.artifact')
+        compile project(':kernel:org.eclipse.virgo.kernel.deployer')
+        compile project(':kernel:org.eclipse.virgo.kernel.equinox.extensions')
+
+        if (System.properties['weaving.enabled'] == 'true') {
+            aspectpath project(':medic:org.eclipse.virgo.medic')
+            aspectpath project(':nano:org.eclipse.virgo.nano.core')
+        }
+    }
+}
+
+project(':web:org.eclipse.virgo.web.dm') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+        testCompile group: "org.apache.commons", name: "com.springsource.org.apache.commons.logging", version: commonsLoggingVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.springframework", name: "org.springframework.aop", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.core", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.beans", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.context", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.web", version: springframeworkVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.blueprint.io", version: geminiBlueprintVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.blueprint.core", version: geminiBlueprintVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.blueprint.extender", version: geminiBlueprintVersion, configuration: "compile", ext: "jar"
+
+        compile project(':medic:org.eclipse.virgo.medic')
+        compile project(':nano:org.eclipse.virgo.nano.core')
+
+        if (System.properties['weaving.enabled'] == 'true') {
+            aspectpath project(':medic:org.eclipse.virgo.medic')
+            aspectpath project(':nano:org.eclipse.virgo.nano.core')
+        }
+    }
+}
+
+project(':web:org.eclipse.virgo.web.tomcat.support') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.web.tomcat", version: geminiWebVersion, configuration: "compile", ext: "jar"
+
+        compile project(':kernel:org.eclipse.virgo.kernel.osgi')
+        compile project(':medic:org.eclipse.virgo.medic')
+        compile project(':nano:org.eclipse.virgo.nano.core')
+        compile project(':util:org.eclipse.virgo.util.io')
+        compile project(':util:org.eclipse.virgo.util.math')
+        compile project(':web:org.eclipse.virgo.web.core')
+
+        if (System.properties['weaving.enabled'] == 'true') {
+            aspectpath project(':medic:org.eclipse.virgo.medic')
+            aspectpath project(':nano:org.eclipse.virgo.nano.core')
+        }
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.jpa.integration') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.transaction", version: javaxTransactionVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.persistence.core", version: eclipsePersistenceCoreVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.core", version: apacheOpenejbCoreVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.hibernate", name: "com.springsource.org.hibernate", version: hibernateVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.appdeployer') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.ejb", version: javaxEjbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.validation", version: javaxValidationVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.core", version: apacheOpenejbCoreVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.jee", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.xbean.finder", version: apacheXBeanFinderVersion, configuration: "compile", ext: "jar"
+
+        compile project(':medic:org.eclipse.virgo.medic')
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.applistener') {
+    dependencies {
+        compile project(':medic:org.eclipse.virgo.medic')
+        compile project(':web:org.eclipse.virgo.web.enterprise.appdeployer')
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.javax.persistence.extension') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.persistence", version: javaxPersistenceVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.javax.persistence.provider.initializer') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.persistence", version: javaxPersistenceVersion, configuration: "compile", ext: "jar"
+
+        compile project(':web:org.eclipse.virgo.web.enterprise.javax.persistence.extension')
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.jsf.support') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.ejb", version: javaxEjbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.persistence", version: javaxPersistenceVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "cdi.api", version: cdiApiVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.glassfish.com.sun.faces", version: glassfishComSunFacesVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openwebbeans.impl", version: apacheOpenwebbeansVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.fragment.bval') { dependencies { // <dependency org="org.eclipse.virgo.mirrored" name="org.apache.bval" rev="${org.apache.bval}" conf="compile->runtime"/>
+    } }
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.fragment.jotm') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.transaction", version: javaxTransactionVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.ow2.jotm.jotm-core", version: jotmVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.fragment.jpa') { dependencies { } }
+
+// TODO - check oev.web.enterprise.openejb.fragment.webbeans
+project(':web:org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans') { dependencies { } }
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.initialiser') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.transaction", version: javaxTransactionVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.core", version: apacheOpenejbCoreVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.openejb.tomcat.factory') {
+    dependencies {
+        testCompile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.juli.extras", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.tomcat.util", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.coyote", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.core", version: apacheOpenejbCoreVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.tomcat.api", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.openwebbeans.initialiser') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.tomcat.api", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openwebbeans.tomcat7", version: apacheOpenwebbeansTomcat7Version, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.persistence.openejb.classloading.hook') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.security') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+        testCompile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        testRuntime group: "org.apache.commons", name: "com.springsource.org.apache.commons.fileupload", version: commonsFileuploadVersion, configuration: "compile", ext: "jar"
+
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.juli.extras", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.tomcat.util", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.coyote", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        testCompile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.security.jacc", version: javaxSecurityJaccVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.core", version: apacheOpenejbCoreVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.security.valve') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.openejb.loader", version: apacheOpenejbVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.catalina", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.coyote", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+
+        compile project(':web:org.eclipse.virgo.web.enterprise.security')
+    }
+}
+
+project(':web:org.eclipse.virgo.web.enterprise.services.accessor') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi.services", version: osgiServicesVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.web.tomcat", version: geminiWebVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.tomcat.api", version: apacheCatalinaVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.apache.felix.gogo.runtime", version: gogoRuntimeVersion, configuration: "compile", ext: "jar"
+
+        compile project(':util:org.eclipse.virgo.util.osgi.manifest')
+        compile project(':kernel:org.eclipse.virgo.kernel.equinox.extensions')
+
+        /*
+         <dependency org="org.eclipse.virgo.mirrored" name="org.apache.openejb.core" rev="${org.apache.openejb.core}" conf="compile->runtime"/>
+         <dependency org="org.eclipse.virgo.mirrored" name="org.apache.openejb.loader" rev="${org.apache.openejb.loader}" conf="compile->runtime"/>
+         <dependency org="org.eclipse.virgo.mirrored" name="org.apache.catalina" rev="${org.apache.catalina}" conf="compile->runtime"/>
+         */
+    }
+}
+
+project(':web:org.eclipse.virgo.web.war.deployer') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.web.core", version: geminiWebVersion, configuration: "compile", ext: "jar"
+
+        compile project(':medic:org.eclipse.virgo.medic')
+        compile project(':nano:org.eclipse.virgo.nano.deployer')
+        compile project(':nano:org.eclipse.virgo.nano.deployer.api')
+        compile project(':util:org.eclipse.virgo.util.io')
+        compile project(':util:org.eclipse.virgo.util.osgi.manifest')
+    }
+}
diff --git a/org.eclipse.virgo.web.core/template.mf b/org.eclipse.virgo.web.core/template.mf
index 796d4c3..472f656 100644
--- a/org.eclipse.virgo.web.core/template.mf
+++ b/org.eclipse.virgo.web.core/template.mf
@@ -4,20 +4,20 @@
 Bundle-SymbolicName: org.eclipse.virgo.web.core
 Bundle-Version: ${version}
 Import-Template: 
- org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- org.eclipse.virgo.nano.*;version="${org.eclipse.virgo.nano:[=.=.=, +1)}",
- org.eclipse.gemini.web.*;version="${org.eclipse.gemini.web:[=.=.=, +1)}",
- org.eclipse.virgo.repository.*;version="${org.eclipse.virgo.repository:[=.=.=, +1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, +1)}",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
- org.eclipse.virgo.kernel.equinox.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- javax.servlet.*;version="${javax.servlet:[-1.6.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.eclipse.virgo.kernel.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.nano.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.gemini.web.*;version="${geminiWebVersion:[=.=.=, +1)}",
+ org.eclipse.virgo.repository.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.kernel.equinox.*;version="${version:[=.=.=, +1)}",
+ javax.servlet.*;version="${javaxServletVersion:[-1.6.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.eclipse.osgi.*;version="0",
  org.osgi.framework.*;version="0",
  org.osgi.util.*;version="0",
  org.osgi.service.*;version="0",
- org.slf4j.*;version="${org.slf4j.api:[=.=.=, +1)}"
+ org.slf4j.*;version="${slf4jVersion:[=.=.=, +1)}"
 Excluded-Exports: 
  org.eclipse.virgo.web.core.internal.*
 Excluded-Imports: 
diff --git a/org.eclipse.virgo.web.dm/template.mf b/org.eclipse.virgo.web.dm/template.mf
index 6e10201..c52d898 100644
--- a/org.eclipse.virgo.web.dm/template.mf
+++ b/org.eclipse.virgo.web.dm/template.mf
@@ -4,12 +4,12 @@
 Bundle-SymbolicName: org.eclipse.virgo.web.dm
 Bundle-Version: ${version}
 Import-Template: 
- org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- javax.servlet.*;version="${javax.servlet:[-1.5.=, +1)}",
- org.apache.commons.logging.*;version="${org.apache.commons.logging:[=.=.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.eclipse.virgo.kernel.*;version="${version:[=.=.=, +1)}",
+ javax.servlet.*;version="${javaxServletVersion:[-1.5.=, +1)}",
+ org.apache.commons.logging.*;version="${commonsLoggingVersion:[=.=.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.osgi.framework.*;version="0",
- org.springframework.*;version="${org.springframework:[3.1, +1)}",
- org.eclipse.gemini.blueprint.*;version="${org.eclipse.gemini.blueprint:[=.=.=, +1)}",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
- org.slf4j.*;version="${org.slf4j.api:[=.=.=, +1)}"
+ org.springframework.*;version="${springframeworkVersion:[3.1, +1)}",
+ org.eclipse.gemini.blueprint.*;version="${geminiBlueprintVersion:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
+ org.slf4j.*;version="${slf4jVersion:[=.=.=, +1)}"
diff --git a/org.eclipse.virgo.web.enterprise.appdeployer/template.mf b/org.eclipse.virgo.web.enterprise.appdeployer/template.mf
index fc4b020..f6f2c55 100644
--- a/org.eclipse.virgo.web.enterprise.appdeployer/template.mf
+++ b/org.eclipse.virgo.web.enterprise.appdeployer/template.mf
@@ -10,13 +10,13 @@
  javax.naming;version="0",
  javax.servlet;version="0",
  javax.validation;version="0",
- org.apache.catalina.*;version="${org.apache.catalina:[=.=.=, +1)}",
- org.apache.naming.*;version="${org.apache.catalina:[=.=.=, +1)}",
+ org.apache.catalina.*;version="${apacheCatalinaVersion:[=.=.=, =.+1)}",
+ org.apache.naming.*;version="${apacheCatalinaVersion:[=.=.=, +1)}",
  org.apache.openejb.*;version="0",
  org.apache.webbeans.*;version="0",
  org.apache.xbean.finder.*;version="0",
  org.osgi.framework;version="0",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
- org.slf4j;version="0" 
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
+ org.slf4j;version="${slf4jVersion:[=.=.=,+1)}"
 Excluded-Exports:
  *.internal.*
diff --git a/org.eclipse.virgo.web.enterprise.applistener/template.mf b/org.eclipse.virgo.web.enterprise.applistener/template.mf
index bba18f0..ba275f5 100644
--- a/org.eclipse.virgo.web.enterprise.applistener/template.mf
+++ b/org.eclipse.virgo.web.enterprise.applistener/template.mf
@@ -7,9 +7,9 @@
 Fragment-Host: org.eclipse.gemini.web.tomcat
 Import-Template: javax.servlet;version="0",
  org.eclipse.virgo.web.enterprise.openejb.deployer;version="0",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
- org.apache.catalina.*;version="${org.apache.catalina:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
+ org.apache.catalina.*;version="${apacheCatalinaVersion:[=.=.=, +1)}",
  org.apache.openejb.*;version="0",
- org.slf4j.*;version="0"
+ org.slf4j;version="${slf4jVersion:[=.=.=,+1)}"
 Excluded-Exports:
  *
diff --git a/org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/template.mf
old mode 100755
new mode 100644
similarity index 84%
rename from org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/template.mf
index 876c54e..84fe5a0
--- a/org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans/template.mf
@@ -1,9 +1,8 @@
-Manifest-Version: 1.0
-Fragment-host: org.apache.catalina
-Bundle-Version: 3.6.0.enterprise
-Bundle-Name: Catalina Integration With OpenWebBeans
-Bundle-ManifestVersion: 2
-Import-Package: org.apache.webbeans.web.tomcat,org.apache.webbeans.servlet
-Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-
+Bundle-ManifestVersion: 2
+Bundle-Name: Catalina Integration With OpenWebBeans
+Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.catalina.fragment.webbeans
+Bundle-Version: ${version}
+Fragment-host: org.apache.catalina
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Import-Package: org.apache.webbeans.web.tomcat,org.apache.webbeans.servlet
+ 
\ No newline at end of file
diff --git a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/CompositePersistenceProviderResolverTest.java b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/CompositePersistenceProviderResolverTest.java
index b2c40a7..4b9fcde 100755
--- a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/CompositePersistenceProviderResolverTest.java
+++ b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/CompositePersistenceProviderResolverTest.java
@@ -56,11 +56,11 @@
 	}
 	
 	private void prepareServicesFile() throws Exception {
-		new File("./target/test-classes/META-INF").mkdir();
-		File servicesDir = new File("./target/test-classes/META-INF/services");
+		new File("./build/classes/test/META-INF").mkdir();
+		File servicesDir = new File("./build/classes/test/META-INF/services");
 		servicesDir.mkdir();
 		
-		File persistenceProviderFile = new File("./target/test-classes/META-INF/services/javax.persistence.spi.PersistenceProvider");
+		File persistenceProviderFile = new File("./build/classes/test/META-INF/services/javax.persistence.spi.PersistenceProvider");
 		
 		PrintWriter writer = null; 
 		try {
@@ -81,17 +81,17 @@
 	
 	@After
 	public void clean() {
-		File persistenceProviderFile = new File("./target/test-classes/META-INF/services/javax.persistence.spi.PersistenceProvider");
+		File persistenceProviderFile = new File("./build/classes/test/META-INF/services/javax.persistence.spi.PersistenceProvider");
 		if (persistenceProviderFile.exists()) {
 			persistenceProviderFile.delete();
 		}
 		
-		File servicesDir = new File("./target/test-classes/META-INF/services");
+		File servicesDir = new File("./build/classes/test/META-INF/services");
 		if (servicesDir.exists()) {
 			servicesDir.delete();
 		}
 		
-		File metaInfDir = new File("./target/test-classes/META-INF");
+		File metaInfDir = new File("./build/classes/test/META-INF");
 		if (metaInfDir.exists()) {
 			metaInfDir.delete();
 		}
diff --git a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/DefaultPersistenceProviderResolverTest.java b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/DefaultPersistenceProviderResolverTest.java
index a0ddc8c..5213a7c 100755
--- a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/DefaultPersistenceProviderResolverTest.java
+++ b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/src/test/java/org/eclipse/virgo/web/enterprise/javax/persistence/extension/DefaultPersistenceProviderResolverTest.java
@@ -54,11 +54,11 @@
 	}
 	
 	private void prepareServicesFile(String[] persistenceProviderNames) throws Exception {
-		new File("./target/test-classes/META-INF").mkdir();
-		File servicesDir = new File("./target/test-classes/META-INF/services");
+		new File("./build/classes/test/META-INF").mkdir();
+		File servicesDir = new File("./build/classes/test/META-INF/services");
 		servicesDir.mkdir();
 		
-		File persistenceProviderFile = new File("./target/test-classes/META-INF/services/javax.persistence.spi.PersistenceProvider");
+		File persistenceProviderFile = new File("./build/classes/test//META-INF/services/javax.persistence.spi.PersistenceProvider");
 		
 		PrintWriter writer = null; 
 		try {
@@ -81,17 +81,17 @@
 	
 	@After
 	public void clean() {
-		File persistenceProviderFile = new File("./target/test-classes/META-INF/services/javax.persistence.spi.PersistenceProvider");
+		File persistenceProviderFile = new File("./build/classes/test/META-INF/services/javax.persistence.spi.PersistenceProvider");
 		if (persistenceProviderFile.exists()) {
 			persistenceProviderFile.delete();
 		}
 		
-		File servicesDir = new File("./target/test-classes/META-INF/services");
+		File servicesDir = new File("./build/classes/test/META-INF/services");
 		if (servicesDir.exists()) {
 			servicesDir.delete();
 		}
 		
-		File metaInfDir = new File("./target/test-classes/META-INF");
+		File metaInfDir = new File("./build/classes/test/META-INF");
 		if (metaInfDir.exists()) {
 			metaInfDir.delete();
 		}
diff --git a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/template.mf b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/template.mf
index 72db06f..bee04ff 100755
--- a/org.eclipse.virgo.web.enterprise.javax.persistence.extension/template.mf
+++ b/org.eclipse.virgo.web.enterprise.javax.persistence.extension/template.mf
@@ -4,7 +4,7 @@
 Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.javax.persistence.extension
 Bundle-Version: ${version}
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Fragment-Host: javax.persistence;bundle-version="[2.0.4, 2.1.0)"
+Fragment-Host: javax.persistence;bundle-version="${javaxPersistenceVersion:[=.=.=, =.+1)}"
 Import-Template: org.osgi.framework;version="0"
 Export-Template: org.eclipse.virgo.web.enterprise.javax.persistence.extension
 Excluded-Imports:
diff --git a/org.eclipse.virgo.web.enterprise.jsf.support/template.mf b/org.eclipse.virgo.web.enterprise.jsf.support/template.mf
index a377f49..73dd1b1 100644
--- a/org.eclipse.virgo.web.enterprise.jsf.support/template.mf
+++ b/org.eclipse.virgo.web.enterprise.jsf.support/template.mf
@@ -9,7 +9,7 @@
  javax.ejb;version="0",
  javax.persistence;version="0",
  com.sun.faces.spi;version="0",
- org.apache.naming;version="${org.apache.catalina:[=.=.=, +1)}",
+ org.apache.naming;version="${apacheCatalinaVersion:[=.=.=, +1)}",
  javax.naming;version="0",
  org.slf4j.*;version="0",
  org.apache.webbeans.*;version="0",
diff --git a/org.eclipse.virgo.web.enterprise.openejb.fragment.bval/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.openejb.fragment.bval/template.mf
old mode 100755
new mode 100644
similarity index 89%
rename from org.eclipse.virgo.web.enterprise.openejb.fragment.bval/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.openejb.fragment.bval/template.mf
index 2b54a98..c64a9b8
--- a/org.eclipse.virgo.web.enterprise.openejb.fragment.bval/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.openejb.fragment.bval/template.mf
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: Virgo Web Enterprise OpenEjb BVal Fragment
 Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.fragment.bval
-Bundle-Version: 3.6.0.enterprise
+Bundle-Version: ${version}
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Fragment-Host: org.apache.openejb.core
 Import-Package: org.apache.bval.constraints
diff --git a/org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/template.mf
old mode 100755
new mode 100644
similarity index 90%
rename from org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/template.mf
index 03b3fae..44533b9
--- a/org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.openejb.fragment.jotm/template.mf
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: Virgo Web Enterprise OpenEjb Transaction Integration
 Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.fragment.jotm
-Bundle-Version: 3.6.0.enterprise
+Bundle-Version: ${version}
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Import-Package: javax.transaction, org.objectweb.jotm
 Fragment-Host: org.apache.openejb.core
+Import-Package: javax.transaction, org.objectweb.jotm
diff --git a/org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/template.mf
old mode 100755
new mode 100644
similarity index 90%
rename from org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/template.mf
index 276ba66..5c5494c
--- a/org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.openejb.fragment.jpa/template.mf
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: Virgo Web Enterprise OpenEjb JPA Fragment
 Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.fragment.jpa
-Bundle-Version: 3.6.0.enterprise
+Bundle-Version: ${version}
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Fragment-Host: org.apache.openejb.core
 Import-Package: org.apache.derby.jdbc;resolution:=optional
diff --git a/org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/template.mf
old mode 100755
new mode 100644
similarity index 87%
rename from org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/template.mf
index 47bc2fa..c76c1f2
--- a/org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans/template.mf
@@ -1,14 +1,12 @@
-Manifest-Version: 1.0
-Fragment-Host: org.apache.openejb.core
-Bundle-Version: 3.6.0.enterprise
-Bundle-Name: OpenEjb integration with OpenWebBeans
-Bundle-ManifestVersion: 2
-Import-Package: org.apache.webbeans.ee.beans,
- org.apache.webbeans.ee.common.beans,
- org.apache.webbeans.jsf,
- org.apache.webbeans.jsf.plugin,
- org.apache.webbeans.web.tomcat,
- org.slf4j.spi
-Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-
+Bundle-ManifestVersion: 2
+Bundle-Name: OpenEjb integration with OpenWebBeans
+Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.fragment.webbeans
+Bundle-Version: ${version}
+Fragment-Host: org.apache.openejb.core
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Import-Package: org.apache.webbeans.ee.beans,
+ org.apache.webbeans.ee.common.beans,
+ org.apache.webbeans.jsf,
+ org.apache.webbeans.jsf.plugin,
+ org.apache.webbeans.web.tomcat,
+ org.slf4j.spi
diff --git a/org.eclipse.virgo.web.enterprise.openejb.initialiser/template.mf b/org.eclipse.virgo.web.enterprise.openejb.initialiser/template.mf
index f190c80..e2e5c51 100644
--- a/org.eclipse.virgo.web.enterprise.openejb.initialiser/template.mf
+++ b/org.eclipse.virgo.web.enterprise.openejb.initialiser/template.mf
@@ -6,13 +6,13 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Require-Bundle: org.apache.openejb.core
 Import-Template: org.osgi.framework;version="0",
- org.apache.openejb.assembler.classic;version="${org.apache.openejb.core:[=.=.=, +1)}",
- org.apache.openejb.spi;version="${org.apache.openejb.core:[=.=.=, +1)}",
- org.apache.openejb.core;version="${org.apache.openejb.core:[=.=.=, +1)}",
- org.apache.openejb.util;version="${org.apache.openejb.core:[=.=.=, +1)}",
- org.apache.openejb.loader;version="${org.apache.openejb.loader:[=.=.=, +1)}",
+ org.apache.openejb.assembler.classic;version="${apacheOpenejbCoreVersion:[=.=.=, +1)}",
+ org.apache.openejb.spi;version="${apacheOpenejbCoreVersion:[=.=.=, +1)}",
+ org.apache.openejb.core;version="${apacheOpenejbCoreVersion:[=.=.=, +1)}",
+ org.apache.openejb.util;version="${apacheOpenejbCoreVersion:[=.=.=, +1)}",
+ org.apache.openejb.loader;version="${apacheOpenejbVersion:[=.=.=, +1)}",
  org.apache.openejb;version="0",
- org.apache.naming;version="${org.apache.catalina:[=.=.=, +1)}",
+ org.apache.naming;version="${apacheCatalinaVersion:[=.=.=, +1)}",
  javax.naming;version="0"
 Excluded-Exports:
  *
diff --git a/org.eclipse.virgo.web.enterprise.openejb.jpa.integration/template.mf b/org.eclipse.virgo.web.enterprise.openejb.jpa.integration/template.mf
new file mode 100644
index 0000000..78f46be
--- /dev/null
+++ b/org.eclipse.virgo.web.enterprise.openejb.jpa.integration/template.mf
@@ -0,0 +1,5 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Virgo Web Enterprise OpenEjb JPA Integration
+Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.openejb.jpa.integration
+Bundle-Version: ${version}
diff --git a/org.eclipse.virgo.web.enterprise.openejb.tomcat.factory/template.mf b/org.eclipse.virgo.web.enterprise.openejb.tomcat.factory/template.mf
index c96066b..8fe0e34 100755
--- a/org.eclipse.virgo.web.enterprise.openejb.tomcat.factory/template.mf
+++ b/org.eclipse.virgo.web.enterprise.openejb.tomcat.factory/template.mf
@@ -5,8 +5,8 @@
 Bundle-Version: ${version}
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Import-Template: javax.naming;version="0",
- org.apache.catalina;version="0",
- org.apache.catalina.core;version="0"
+ org.apache.catalina;version="${apacheCatalinaVersion:[=.=.=,+1)}",
+ org.apache.catalina.core;version="${apacheCatalinaVersion:[=.=.=,+1)}"
 Excluded-Imports: 
  org.apache.openejb.util;version="0",
  org.apache.naming;version="0"                  
diff --git a/org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/template.mf
similarity index 78%
rename from org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/template.mf
index 4e2d216..93d39c7 100644
--- a/org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook/template.mf
@@ -1,10 +1,7 @@
-Manifest-Version: 1.0
-Fragment-Host: system.bundle;extension:="framework"
-Bundle-Version: 3.6.0.enterprise
-Bundle-Name: Virgo Web Enterprise Security Integration Classloading Ho
- ok
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.security.openejb
- .classloading.hook
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Virgo Web Enterprise Security Integration Classloading Hook
+Bundle-SymbolicName: org.eclipse.virgo.web.enterprise.security.openejb.classloading.hook
+Bundle-Version: ${version}
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Fragment-Host: system.bundle;extension:="framework"
diff --git a/org.eclipse.virgo.web.servlet.adapter/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.servlet.adapter/template.mf
similarity index 92%
rename from org.eclipse.virgo.web.servlet.adapter/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.servlet.adapter/template.mf
index 5f56478..a76d10a 100644
--- a/org.eclipse.virgo.web.servlet.adapter/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.servlet.adapter/template.mf
@@ -1,13 +1,11 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
-Bundle-Version: 3.6.0
 Bundle-Name: Virgo Web Servlet Adapter
 Bundle-SymbolicName: org.eclipse.virgo.web.servlet.adapter
+Bundle-Version: ${version}
 Require-Bundle: javax.servlet
 Export-Package: javax.servlet;version="3.0.0",
  javax.servlet.http;version="3.0.0",
  javax.servlet.annotation;version="3.0.0",
  javax.servlet.descriptor;version="3.0.0",
  javax.servlet.resources;version="3.0.0"
- 
-
diff --git a/org.eclipse.virgo.web.spring.integration/src/main/resources/META-INF/MANIFEST.MF b/org.eclipse.virgo.web.spring.integration/template.mf
similarity index 88%
rename from org.eclipse.virgo.web.spring.integration/src/main/resources/META-INF/MANIFEST.MF
rename to org.eclipse.virgo.web.spring.integration/template.mf
index 11e9e3a..e4e0ec4 100644
--- a/org.eclipse.virgo.web.spring.integration/src/main/resources/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.web.spring.integration/template.mf
@@ -1,10 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
-Bundle-Version: 3.6.0
 Bundle-Name: Virgo Web Spring Integration
 Bundle-SymbolicName: org.eclipse.virgo.web.spring.integration
+Bundle-Version: ${version}
 Fragment-host: org.apache.catalina
 Import-Package: org.springframework.web
-
-
-
diff --git a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/AbstractWebIntegrationTests.java b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/AbstractWebIntegrationTests.java
index 5d6177e..51971de 100644
--- a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/AbstractWebIntegrationTests.java
+++ b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/AbstractWebIntegrationTests.java
@@ -380,7 +380,7 @@
     }
 
     protected PathReference hotDeploy(PathReference toDeploy, String name, String version) throws InterruptedException {
-        PathReference deployed = toDeploy.copy(new PathReference("target/pickup"), true);
+        PathReference deployed = toDeploy.copy(new PathReference("build/pickup"), true);
 
         awaitDeployment(toDeploy, deployed);
         awaitWebAppStart(name, version);
diff --git a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/PerAppTraceRoutingTests.java b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/PerAppTraceRoutingTests.java
index 4428782..bffed31 100644
--- a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/PerAppTraceRoutingTests.java
+++ b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/PerAppTraceRoutingTests.java
@@ -34,14 +34,14 @@
 
     @Before
     public void deleteTraceFiles() {
-        FileSystemUtils.deleteRecursively("target/per-app-logging.war-0");
+        FileSystemUtils.deleteRecursively("build/per-app-logging.war-0");
     }
 
     @Test
     public void perAppTraceRouting() throws Exception {
         assertDeployAndUndeployBehavior("per-app-logging", new File("src/test/apps-static/per-app-logging.war"), "");
 
-        File traceFile = new File("target/per-app-logging.war-0/trace.log");
+        File traceFile = new File("build/per-app-logging.war-0/trace.log");
         assertTrue(traceFile.exists());
         List<String> expectedText = new ArrayList<String>();
 
diff --git a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/WarDirectoryDeploymentTests.java b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/WarDirectoryDeploymentTests.java
index 969fc0d..3ad2eda 100644
--- a/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/WarDirectoryDeploymentTests.java
+++ b/org.eclipse.virgo.web.test/src/test/java/org/eclipse/virgo/web/test/WarDirectoryDeploymentTests.java
@@ -29,7 +29,7 @@
 
     @Before
     public void clean() {
-        PathReference pickup = new PathReference("target/pickup");
+        PathReference pickup = new PathReference("build/pickup");
         pickup.delete(true);
         pickup.createDirectory();
     }
diff --git a/org.eclipse.virgo.web.test/template.mf b/org.eclipse.virgo.web.test/template.mf
index 3966e50..ae076cd 100644
--- a/org.eclipse.virgo.web.test/template.mf
+++ b/org.eclipse.virgo.web.test/template.mf
@@ -5,16 +5,16 @@
 Bundle-Version: ${version}
 Import-Template: 
  org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, +1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, +1)}",
  org.eclipse.virgo.kernel.equinox.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
  javax.management.*;version="0",
  org.junit.*;version="${org.junit:[=.=.=, +1)}",
  javax.servlet.*;version="${javax.servlet:[-1.6.=, +1)}",
  org.apache.commons.logging.*;version="${org.apache.commons.logging:[=.=.=, +1)}",
  org.apache.commons.httpclient.*;version="${org.apache.commons.httpclient:[=.=.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.osgi.framework.*;version="0",
- org.springframework.*;version="${org.springframework:[2.5.6, +1)}",
+ org.springframework.*;version="${springframeworkVersion:[2.5.6, +1)}",
  org.osgi.service.cm.*;version="0",
  org.osgi.service.component.*;version="0",
  org.osgi.service.log.*;version="0",
@@ -24,7 +24,7 @@
  org.eclipse.osgi.service.environment.*;version="0",
  org.eclipse.osgi.util.*;version="0",
  org.osgi.util.tracker.*;version="0",
- org.eclipse.gemini.blueprint.*;version="${org.eclipse.gemini.blueprint:[=.=.=, +1)}"
+ org.eclipse.gemini.blueprint.*;version="${geminiBlueprintVersion:[=.=.=, +1)}"
 Excluded-Imports: 
  org.eclipse.virgo,
  org.eclipse.virgo.test.*,
diff --git a/org.eclipse.virgo.web.tomcat.support/template.mf b/org.eclipse.virgo.web.tomcat.support/template.mf
index c28b6b0..816c643 100644
--- a/org.eclipse.virgo.web.tomcat.support/template.mf
+++ b/org.eclipse.virgo.web.tomcat.support/template.mf
@@ -5,28 +5,28 @@
 Fragment-Host: org.eclipse.gemini.web.tomcat
 Bundle-Version: ${version}
 Import-Template: 
- org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- org.eclipse.virgo.nano.*;version="${org.eclipse.virgo.nano:[=.=.=, +1)}",
- org.eclipse.gemini.web.*;version="${org.eclipse.gemini.web:[=.=.=, +1)}",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
+ org.eclipse.virgo.kernel.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.nano.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.gemini.web.*;version="${geminiWebVersion:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
  org.eclipse.virgo.web.*;version="${version:[=.=.=, =.+1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, +1)}",
- org.apache.catalina.*;version="${org.apache.catalina:[=.=.=, =.+1)}",
- javax.servlet.*;version="${javax.servlet:[-1.6.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, +1)}",
+ org.apache.catalina.*;version="${apacheCatalinaVersion:[=.=.=, =.+1)}",
+ javax.servlet.*;version="${javaxServletVersion:[-1.6.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.osgi.framework.*;version="0"
 Import-Package: 
- org.apache.catalina.ha;version="${org.apache.catalina.ha:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.ha.tcp;version="${org.apache.catalina.ha:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.ha.session;version="${org.apache.catalina.ha:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.ha.deploy;version="${org.apache.catalina.ha:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.io;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.group;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.membership;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.transport.nio;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.transport;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- org.apache.catalina.tribes.group.interceptors;version="${org.apache.catalina.tribes:[=.=.=, =.+1)}";resolution:=optional,
- javax.websocket;version="${javax.websocket:[=.=.=, =.+1)}";resolution:=optional
+ org.apache.catalina.ha;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.ha.tcp;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.ha.session;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.ha.deploy;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.io;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.group;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.membership;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.transport.nio;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.transport;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ org.apache.catalina.tribes.group.interceptors;version="${apacheCatalinaVersion:[=.=.=, =.+1)}";resolution:=optional,
+ javax.websocket;version="${javaxWebsocketVersion:[=.=.=, =.+1)}";resolution:=optional
 Excluded-Exports: 
  *
diff --git a/org.eclipse.virgo.web.war.deployer/template.mf b/org.eclipse.virgo.web.war.deployer/template.mf
index 085b688..ff39a71 100644
--- a/org.eclipse.virgo.web.war.deployer/template.mf
+++ b/org.eclipse.virgo.web.war.deployer/template.mf
@@ -6,8 +6,8 @@
 Service-Component: OSGI-INF/virgo.web.war.deployer.component.xml
 Import-Template: 
  org.eclipse.virgo.nano.*;version="${version:[=.=.=, =.+1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, =.+1)}",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, =.+1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, =.+1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, =.+1)}",
  org.eclipse.gemini.web.core;version="0",
  org.eclipse.osgi.*;version="0",
  org.osgi.framework.*;version="0",
