karaf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gno...@apache.org
Subject [3/3] karaf git commit: [KARAF-4957] Move old features into enterprise-legacy and spring-legacy modules
Date Wed, 25 Jan 2017 15:45:18 GMT
[KARAF-4957] Move old features into enterprise-legacy and spring-legacy modules

Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/13c7bf86
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/13c7bf86
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/13c7bf86

Branch: refs/heads/master
Commit: 13c7bf86f339268a8c346d09fa104d8afeb79992
Parents: 350c7f2
Author: Guillaume Nodet <gnodet@apache.org>
Authored: Wed Jan 25 15:09:58 2017 +0100
Committer: Guillaume Nodet <gnodet@apache.org>
Committed: Wed Jan 25 16:45:08 2017 +0100

----------------------------------------------------------------------
 assemblies/features/enterprise-legacy/pom.xml   | 259 +++++++++++++
 .../src/main/feature/feature.xml                | 149 ++++++++
 assemblies/features/enterprise/pom.xml          |   6 +
 .../enterprise/src/main/feature/feature.xml     | 128 +------
 assemblies/features/pom.xml                     |   2 +
 assemblies/features/spring-legacy/pom.xml       | 182 ++++++++++
 .../spring-legacy/src/main/feature/feature.xml  | 363 +++++++++++++++++++
 .../spring/src/main/feature/feature.xml         | 339 -----------------
 demos/profiles/registry/pom.xml                 |   6 +-
 .../main/resources/default.profile/profile.cfg  |   8 +-
 .../main/resources/karaf.profile/profile.cfg    |   1 +
 .../org/apache/karaf/itests/FeatureTest.java    |  25 +-
 .../java/org/apache/karaf/itests/JmsTest.java   |  22 +-
 .../itests/features/EnterpriseFeaturesTest.java |  26 +-
 .../itests/features/Spring3FeaturesTest.java    |  26 +-
 .../itests/features/Spring40FeaturesTest.java   |  26 +-
 .../itests/features/Spring41FeaturesTest.java   |  25 +-
 pom.xml                                         |   1 +
 18 files changed, 1125 insertions(+), 469 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/enterprise-legacy/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/enterprise-legacy/pom.xml b/assemblies/features/enterprise-legacy/pom.xml
new file mode 100644
index 0000000..63f4841
--- /dev/null
+++ b/assemblies/features/enterprise-legacy/pom.xml
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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">
+
+    <!--
+
+        Licensed to the Apache Software Foundation (ASF) under one or more
+        contributor license agreements.  See the NOTICE file distributed with
+        this work for additional information regarding copyright ownership.
+        The ASF licenses this file to You under the Apache License, Version 2.0
+        (the "License"); you may not use this file except in compliance with
+        the License.  You may obtain a copy of the License at
+
+            http://www.apache.org/licenses/LICENSE-2.0
+
+        Unless required by applicable law or agreed to in writing, software
+        distributed under the License is distributed on an "AS IS" BASIS,
+        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+        See the License for the specific language governing permissions and
+        limitations under the License.
+    -->
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.karaf.assemblies.features</groupId>
+        <artifactId>features</artifactId>
+        <version>4.1.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.karaf.features</groupId>
+    <artifactId>enterprise-legacy</artifactId>
+    <packaging>pom</packaging>
+    <name>Apache Karaf :: Assemblies :: Features :: Enterprise Legacy</name>
+
+    <properties>
+        <appendedResourcesDirectory>${basedir}/../../../etc/appended-resources</appendedResourcesDirectory>
+    </properties>
+
+    <dependencies>
+
+        <!-- Framework distribution -->
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>framework</artifactId>
+            <type>kar</type>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- transaction deps -->
+        <dependency>
+            <groupId>org.apache.aries.transaction</groupId>
+            <artifactId>org.apache.aries.transaction.blueprint</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.transaction</groupId>
+            <artifactId>org.apache.aries.transaction.manager</artifactId>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- jpa deps -->
+        <dependency>
+            <groupId>org.apache.aries</groupId>
+            <artifactId>org.apache.aries.util</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jpa</groupId>
+            <artifactId>org.apache.aries.jpa.api</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jpa</groupId>
+            <artifactId>org.apache.aries.jpa.blueprint.aries</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jpa</groupId>
+            <artifactId>org.apache.aries.jpa.container</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jpa</groupId>
+            <artifactId>org.apache.aries.jpa.container.context</artifactId>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- jndi deps -->
+        <dependency>
+            <groupId>org.apache.aries.jndi</groupId>
+            <artifactId>org.apache.aries.jndi.api</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jndi</groupId>
+            <artifactId>org.apache.aries.jndi.core</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jndi</groupId>
+            <artifactId>org.apache.aries.jndi.rmi</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jndi</groupId>
+            <artifactId>org.apache.aries.jndi.url</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.jndi</groupId>
+            <artifactId>org.apache.aries.jndi.legacy.support</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <!-- application-without-isolation deps -->
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>standard</artifactId>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.resolver.obr</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.install</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.api</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.management</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.utils</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.modeller</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.default.local.platform</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.deployment.management</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <!-- without isolation -->
+        <dependency>
+            <groupId>org.apache.aries.application</groupId>
+            <artifactId>org.apache.aries.application.runtime</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <!-- subsystems -->
+        <dependency>
+            <groupId>org.apache.karaf.services</groupId>
+            <artifactId>org.apache.karaf.services.coordinator</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.subsystem</groupId>
+            <artifactId>org.apache.karaf.subsystem.core</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.ops4j.pax.cdi</groupId>
+            <artifactId>pax-cdi-features</artifactId>
+            <version>${pax.cdi.version}</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <scope>provided</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>${project.basedir}/src/main/feature</directory>
+                <filtering>true</filtering>
+                <targetPath>${project.build.directory}/feature</targetPath>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>resources</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.karaf.tooling</groupId>
+                <artifactId>karaf-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>verify</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>verify</goal>
+                        </goals>
+                        <configuration>
+                            <descriptors>
+                                <descriptor>mvn:org.apache.karaf.features/framework/${project.version}/xml/features</descriptor>
+                                <descriptor>file:${project.build.directory}/feature/feature.xml</descriptor>
+                            </descriptors>
+                            <distribution>org.apache.karaf.features:framework</distribution>
+                            <javase>1.8</javase>
+                            <framework>
+                                <feature>framework</feature>
+                            </framework>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-artifacts</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>attach-artifact</goal>
+                        </goals>
+                        <configuration>
+                            <artifacts>
+                                <artifact>
+                                    <file>target/feature/feature.xml</file>
+                                    <classifier>features</classifier>
+                                    <type>xml</type>
+                                </artifact>
+                            </artifacts>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/enterprise-legacy/src/main/feature/feature.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/enterprise-legacy/src/main/feature/feature.xml b/assemblies/features/enterprise-legacy/src/main/feature/feature.xml
new file mode 100644
index 0000000..6f35d04
--- /dev/null
+++ b/assemblies/features/enterprise-legacy/src/main/feature/feature.xml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<features name="enterprise-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
+
+    <!-- NB: this file is not the one really used. This file is used by the karaf-maven-plugin to define the start-level of bundles in the generated feature.xml -->
+
+    <repository>mvn:org.apache.karaf.features/standard/${project.version}/xml/features</repository>
+    <repository>mvn:org.apache.karaf.features/enterprise/${project.version}/xml/features</repository>
+
+    <feature name="transaction-api" version="1.1.0">
+        <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
+    </feature>
+
+    <feature name="transaction" description="OSGi Transaction Manager" version="${aries.transaction.manager.version}">
+        <details>JTA implementation provided by Apache Aries Transaction</details>
+        <feature version="${aries.transaction.manager.version}">transaction-manager-geronimo</feature>
+    </feature>
+
+    <feature name="jpa" description="OSGi Persistence Container" version="${aries.jpa.container.context.version}">
+        <details>JPA implementation provided by Apache Aries JPA 1.x. NB: this feature doesn"t provide the JPA engine, you have to install one by yourself (OpenJPA for instance)</details>
+        <feature version="[1.1,2)">transaction-api</feature>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+        <bundle dependency="true" start-level="30">mvn:org.apache.aries/org.apache.aries.util/${aries.util.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.api/${aries.jpa.api.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.container/${aries.jpa.container.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.container.context/${aries.jpa.container.context.version}</bundle>
+        <conditional>
+            <condition>aries-blueprint</condition>
+            <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.blueprint.aries/${aries.jpa.blueprint.aries.version}</bundle>
+        </conditional>
+    </feature>
+
+    <feature name="openjpa" description="Apache OpenJPA 2.2.x persistence engine support" version="2.2.2">
+        <details>Enable Apache OpenJPA as persistence engine.</details>
+        <feature>jndi</feature>
+        <feature version="[1.1,1.2)">transaction-api</feature>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.2</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-el_1.0_spec/1.0.1</bundle>
+        <bundle dependency="true">mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
+        <bundle dependency="true">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
+        <bundle dependency="true">mvn:commons-pool/commons-pool/${commons-pool.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/${commons-dbcp.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.7.0_6</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.asm/3.3_2</bundle>
+        <bundle>mvn:org.apache.openjpa/openjpa/2.2.2</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
+    </feature>
+
+    <feature name="openjpa" description="Apache OpenJPA 2.3.x persistence engine support" version="2.3.0">
+        <details>Enable Apache OpenJPA as persistence engine.</details>
+        <feature version="[1.1,1.2)">transaction-api</feature>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.2</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-el_1.0_spec/1.0.1</bundle>
+        <bundle dependency="true">mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
+        <bundle dependency="true">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
+        <bundle dependency="true">mvn:commons-pool/commons-pool/${commons-pool.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/${commons-dbcp.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.7.0_6</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.xbean/xbean-asm4-shaded/3.16</bundle>
+        <bundle>mvn:org.apache.openjpa/openjpa/2.3.0</bundle>
+        <requirement>osgi.ee;filter:="(&amp;(osgi.ee=JavaSE)(!(version>=1.9)))"</requirement>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
+    </feature>
+
+    <feature name="hibernate" description="Hibernate 4.2.x JPA persistence engine support" version="${hibernate42.version}">
+        <details>Enable Hibernate 4.2.x as persistence engine.</details>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+        <feature>http</feature>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/${antlr.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/${ant.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/${dom4j.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
+        <bundle dependency="true">mvn:com.fasterxml/classmate/1.1.0</bundle>
+        <bundle dependency="true">mvn:org.javassist/javassist/3.18.1-GA</bundle>
+        <bundle dependency="true">mvn:org.jboss.spec.javax.security.jacc/jboss-jacc-api_1.4_spec/1.0.2.Final</bundle>
+        <bundle dependency="true">mvn:org.jboss/jandex/1.2.2.Final</bundle>
+        <bundle dependency="true">mvn:org.jboss.logging/jboss-logging/3.1.4.GA</bundle>
+        <bundle dependency="true">mvn:org.hibernate.common/hibernate-commons-annotations/4.0.4.Final</bundle>
+        <bundle>mvn:org.hibernate/hibernate-core/${hibernate42.version}</bundle>
+        <bundle>mvn:org.hibernate/hibernate-entitymanager/${hibernate42.version}</bundle>
+        <bundle>mvn:org.hibernate/hibernate-osgi/${hibernate42.version}</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
+    </feature>
+
+    <feature name="hibernate-envers" description="Hibernate Envers 4.2.x" version="${hibernate42.version}">
+        <details>Enable Hibernate Envers 4.2.x</details>
+        <feature version="[4.2,4.3)">hibernate</feature>
+        <bundle>mvn:org.hibernate/hibernate-envers/${hibernate42.version}</bundle>
+    </feature>
+
+    <feature name="hibernate" description="Hibernate 4.3.x JPA persistence engine support" version="${hibernate43.version}">
+        <details>Enable Hibernate 4.3.x as persistence engine.</details>
+        <feature>http</feature>
+        <bundle dependency="true">mvn:org.eclipse.persistence/javax.persistence/2.1.0</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/${antlr.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/${ant.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/${dom4j.bundle.version}</bundle>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
+        <bundle dependency="true">mvn:com.fasterxml/classmate/1.1.0</bundle>
+        <bundle dependency="true">mvn:org.javassist/javassist/3.18.1-GA</bundle>
+        <bundle dependency="true">mvn:org.jboss.spec.javax.security.jacc/jboss-jacc-api_1.4_spec/1.0.2.Final</bundle>
+        <bundle dependency="true">mvn:org.jboss/jandex/1.2.2.Final</bundle>
+        <bundle dependency="true">mvn:org.jboss.logging/jboss-logging/3.1.4.GA</bundle>
+        <bundle dependency="true">mvn:org.hibernate.common/hibernate-commons-annotations/4.0.4.Final</bundle>
+        <bundle>mvn:org.hibernate/hibernate-core/${hibernate43.version}</bundle>
+        <bundle>mvn:org.hibernate/hibernate-entitymanager/${hibernate43.version}</bundle>
+        <bundle>mvn:org.hibernate/hibernate-osgi/${hibernate43.version}</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
+    </feature>
+
+    <feature name="hibernate-envers" description="Hibernate Envers 4.3.x" version="${hibernate43.version}">
+        <details>Enable Hibernate Envers 4.3.x</details>
+        <feature version="[4.3,4.4)">hibernate</feature>
+        <bundle>mvn:org.hibernate/hibernate-envers/${hibernate43.version}</bundle>
+    </feature>
+
+</features>

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/enterprise/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/enterprise/pom.xml b/assemblies/features/enterprise/pom.xml
index 6a8675f..125e5bd 100644
--- a/assemblies/features/enterprise/pom.xml
+++ b/assemblies/features/enterprise/pom.xml
@@ -185,6 +185,12 @@
             <type>xml</type>
             <scope>provided</scope>
         </dependency>
+
+        <dependency>
+            <groupId>org.hibernate</groupId>
+            <artifactId>hibernate-osgi</artifactId>
+            <version>5.2.6.Final</version>
+        </dependency>
     </dependencies>
 
     <build>

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/enterprise/src/main/feature/feature.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/enterprise/src/main/feature/feature.xml b/assemblies/features/enterprise/src/main/feature/feature.xml
index f814a22..9550d5c 100644
--- a/assemblies/features/enterprise/src/main/feature/feature.xml
+++ b/assemblies/features/enterprise/src/main/feature/feature.xml
@@ -21,14 +21,11 @@
     <!-- NB: this file is not the one really used. This file is used by the karaf-maven-plugin to define the start-level of bundles in the generated feature.xml -->
 
     <repository>mvn:org.hibernate/hibernate-validator-osgi-karaf-features/${hibernate.validator.version}/xml/features</repository>
+    <repository>mvn:org.hibernate/hibernate-osgi/${hibernate.version}/xml/karaf</repository>
     <repository>mvn:org.ops4j.pax.cdi/pax-cdi-features/${pax.cdi.version}/xml/features</repository>
     <repository>mvn:org.ops4j.pax.jdbc/pax-jdbc-features/${pax.jdbc.version}/xml/features</repository>
     <repository>mvn:org.apache.karaf.features/standard/${project.version}/xml/features</repository>
     
-    <feature name="transaction-api" version="1.1.0">
-        <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
-    </feature>
-    
     <feature name="transaction-api" version="1.2.0">
         <bundle dependency="true">mvn:javax.interceptor/javax.interceptor-api/1.2</bundle>
         <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-inject/1_2</bundle>
@@ -37,11 +34,6 @@
         <bundle>mvn:javax.transaction/javax.transaction-api/1.2</bundle>
     </feature>
 
-    <feature name="transaction" description="OSGi Transaction Manager" version="${aries.transaction.manager.version}">
-        <details>JTA implementation provided by Apache Aries Transaction</details>
-        <feature version="${aries.transaction.manager.version}">transaction-manager-geronimo</feature>
-    </feature>
-
     <feature name="transaction-manager-geronimo" description="Geronimo Transaction Manager" version="${aries.transaction.manager.version}">
         <details>JTA implementation provided by Apache Aries Transaction</details>
         <config name="org.apache.aries.transaction">
@@ -95,24 +87,11 @@
         <bundle>mvn:org.apache.geronimo.components/geronimo-connector/3.1.1</bundle>
     </feature>
     
-    <feature name="jpa" description="OSGi Persistence Container" version="${aries.jpa.container.context.version}">
-        <details>JPA implementation provided by Apache Aries JPA 1.x. NB: this feature doesn"t provide the JPA engine, you have to install one by yourself (OpenJPA for instance)</details>
-        <feature version="[1.1,2)">transaction-api</feature>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
-        <bundle dependency="true" start-level="30">mvn:org.apache.aries/org.apache.aries.util/${aries.util.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.api/${aries.jpa.api.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.container/${aries.jpa.container.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.container.context/${aries.jpa.container.context.version}</bundle>
-        <conditional>
-            <condition>aries-blueprint</condition>
-            <bundle start-level="30">mvn:org.apache.aries.jpa/org.apache.aries.jpa.blueprint.aries/${aries.jpa.blueprint.aries.version}</bundle>
-        </conditional>
-    </feature>
-
     <feature name="jpa" description="OSGi Persistence Container" version="${aries.jpa.version}">
         <details>JPA implementation provided by Apache Aries JPA 2.x. NB: this feature doesn't provide the JPA engine, you have to install one by yourself (OpenJPA for instance)</details>
         <feature version="[1.1,2)">transaction-api</feature>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+        <feature dependency="true">openjpa</feature>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
         <bundle dependency="true">mvn:org.apache.felix/org.apache.felix.coordinator/${felix.coordinator.version}</bundle>
         <bundle dependency="true">mvn:org.osgi/org.osgi.service.jpa/${org.osgi.service.jpa.version}</bundle>
         <bundle dependency="true">mvn:org.osgi/org.osgi.service.jdbc/${org.osgi.service.jdbc.version}</bundle>
@@ -125,49 +104,11 @@
         </conditional>
     </feature>
 
-    <feature name="openjpa" description="Apache OpenJPA 2.2.x persistence engine support" version="2.2.2">
-        <details>Enable Apache OpenJPA as persistence engine.</details>
-        <feature>jndi</feature>
-        <feature version="[1.1,1.2)">transaction-api</feature>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.2</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-el_1.0_spec/1.0.1</bundle>
-        <bundle dependency="true">mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
-        <bundle dependency="true">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
-        <bundle dependency="true">mvn:commons-pool/commons-pool/${commons-pool.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/${commons-dbcp.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.7.0_6</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.asm/3.3_2</bundle>
-        <bundle>mvn:org.apache.openjpa/openjpa/2.2.2</bundle>
-    </feature>
-
-    <feature name="openjpa" description="Apache OpenJPA 2.3.x persistence engine support" version="2.3.0">
-        <details>Enable Apache OpenJPA as persistence engine.</details>
-        <feature version="[1.1,1.2)">transaction-api</feature>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.2</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-el_1.0_spec/1.0.1</bundle>
-        <bundle dependency="true">mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
-        <bundle dependency="true">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
-        <bundle dependency="true">mvn:commons-pool/commons-pool/${commons-pool.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/${commons-dbcp.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/1.7.0_6</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.xbean/xbean-asm4-shaded/3.16</bundle>
-        <bundle>mvn:org.apache.openjpa/openjpa/2.3.0</bundle>
-        <requirement>osgi.ee;filter:="(&amp;(osgi.ee=JavaSE)(!(version>=1.9)))"</requirement>
-    </feature>
-
     <feature name="openjpa" description="Apache OpenJPA 2.4.x persistence engine support" version="2.4.1">
         <details>Enable Apache OpenJPA as persistence engine.</details>
         <feature>jndi</feature>
         <feature version="[1.2,1.3)">transaction-api</feature>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
+	    <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
         <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-annotation_1.0_spec/1.1.1</bundle>
         <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.2</bundle>
         <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-el_1.0_spec/1.0.1</bundle>
@@ -180,56 +121,18 @@
         <bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
         <bundle dependency="true">mvn:org.apache.xbean/xbean-asm5-shaded/4.3</bundle>
         <bundle>mvn:org.apache.openjpa/openjpa/2.4.1</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
     </feature>
 
-    <feature name="hibernate" description="Hibernate 4.2.x JPA persistence engine support" version="${hibernate42.version}">
-        <details>Enable Hibernate 4.2.x as persistence engine.</details>
-	<bundle dependency="true">mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.jpa-spec.version}</bundle>
-        <feature>http</feature>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/${antlr.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/${ant.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/${dom4j.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
-        <bundle dependency="true">mvn:com.fasterxml/classmate/1.1.0</bundle>
-        <bundle dependency="true">mvn:org.javassist/javassist/3.18.1-GA</bundle>
-        <bundle dependency="true">mvn:org.jboss.spec.javax.security.jacc/jboss-jacc-api_1.4_spec/1.0.2.Final</bundle>
-        <bundle dependency="true">mvn:org.jboss/jandex/1.2.2.Final</bundle>
-        <bundle dependency="true">mvn:org.jboss.logging/jboss-logging/3.1.4.GA</bundle>
-        <bundle dependency="true">mvn:org.hibernate.common/hibernate-commons-annotations/4.0.4.Final</bundle>
-        <bundle>mvn:org.hibernate/hibernate-core/${hibernate42.version}</bundle>
-        <bundle>mvn:org.hibernate/hibernate-entitymanager/${hibernate42.version}</bundle>
-        <bundle>mvn:org.hibernate/hibernate-osgi/${hibernate42.version}</bundle>
-    </feature>
-
-    <feature name="hibernate-envers" description="Hibernate Envers 4.2.x" version="${hibernate42.version}">
-        <details>Enable Hibernate Envers 4.2.x</details>
-        <feature version="${hibernate42.version}">hibernate</feature>
-        <bundle>mvn:org.hibernate/hibernate-envers/${hibernate42.version}</bundle>
-    </feature>
-
-    <feature name="hibernate" description="Hibernate 4.3.x JPA persistence engine support" version="${hibernate43.version}">
-        <details>Enable Hibernate 4.3.x as persistence engine.</details>
-        <feature>http</feature>
-        <bundle dependency="true">mvn:org.eclipse.persistence/javax.persistence/2.1.0</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.antlr/${antlr.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ant/${ant.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/${dom4j.bundle.version}</bundle>
-        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.serp/${serp.bundle.version}</bundle>
-        <bundle dependency="true">mvn:com.fasterxml/classmate/1.1.0</bundle>
-        <bundle dependency="true">mvn:org.javassist/javassist/3.18.1-GA</bundle>
-        <bundle dependency="true">mvn:org.jboss.spec.javax.security.jacc/jboss-jacc-api_1.4_spec/1.0.2.Final</bundle>
-        <bundle dependency="true">mvn:org.jboss/jandex/1.2.2.Final</bundle>
-        <bundle dependency="true">mvn:org.jboss.logging/jboss-logging/3.1.4.GA</bundle>
-        <bundle dependency="true">mvn:org.hibernate.common/hibernate-commons-annotations/4.0.4.Final</bundle>
-        <bundle>mvn:org.hibernate/hibernate-core/${hibernate43.version}</bundle>
-        <bundle>mvn:org.hibernate/hibernate-entitymanager/${hibernate43.version}</bundle>
-        <bundle>mvn:org.hibernate/hibernate-osgi/${hibernate43.version}</bundle>
-    </feature>
-
-    <feature name="hibernate-envers" description="Hibernate Envers 4.3.x" version="${hibernate43.version}">
-        <details>Enable Hibernate Envers 4.3.x</details>
-        <feature version="${hibernate43.version}">hibernate</feature>
-        <bundle>mvn:org.hibernate/hibernate-envers/${hibernate43.version}</bundle>
+    <feature name="hibernate" description="Hibernate JPA engine support" version="${hibernate.version}">
+        <feature prerequisite="true">wrap</feature>
+        <feature version="${hibernate.version}">hibernate-orm</feature>
+        <bundle dependency="true">mvn:net.bytebuddy/byte-buddy/1.6.6</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
     </feature>
 
     <feature name="eclipselink" description="Eclipselink JPA persistence engine support" version="${eclipselink.version}">
@@ -243,6 +146,9 @@
         <bundle>mvn:org.eclipse.persistence/org.eclipse.persistence.antlr/${eclipselink.version}</bundle>
         <bundle>mvn:org.eclipse.persistence/org.eclipse.persistence.jpa.jpql/${eclipselink.version}</bundle>
         <bundle>mvn:org.apache.aries.jpa/org.apache.aries.jpa.eclipselink.adapter/${aries.jpa.version}</bundle>
+        <capability>
+            osgi.service;effective:=active;objectClass=javax.persistence.spi.PersistenceProvider
+        </capability>
     </feature>
 
     <feature name="jndi" description="OSGi Service Registry JNDI access" version="${project.version}">

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/pom.xml b/assemblies/features/pom.xml
index 53c4b14..5535cad 100644
--- a/assemblies/features/pom.xml
+++ b/assemblies/features/pom.xml
@@ -39,7 +39,9 @@
         <module>static</module>
         <module>standard</module>
         <module>spring</module>
+        <module>spring-legacy</module>
         <module>enterprise</module>
+        <module>enterprise-legacy</module>
     </modules>
 
 </project>

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/spring-legacy/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/spring-legacy/pom.xml b/assemblies/features/spring-legacy/pom.xml
new file mode 100644
index 0000000..63eaccc
--- /dev/null
+++ b/assemblies/features/spring-legacy/pom.xml
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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">
+
+    <!--
+
+        Licensed to the Apache Software Foundation (ASF) under one or more
+        contributor license agreements.  See the NOTICE file distributed with
+        this work for additional information regarding copyright ownership.
+        The ASF licenses this file to You under the Apache License, Version 2.0
+        (the "License"); you may not use this file except in compliance with
+        the License.  You may obtain a copy of the License at
+
+            http://www.apache.org/licenses/LICENSE-2.0
+
+        Unless required by applicable law or agreed to in writing, software
+        distributed under the License is distributed on an "AS IS" BASIS,
+        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+        See the License for the specific language governing permissions and
+        limitations under the License.
+    -->
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.karaf.assemblies.features</groupId>
+        <artifactId>features</artifactId>
+        <version>4.1.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.karaf.features</groupId>
+    <artifactId>spring-legacy</artifactId>
+    <packaging>pom</packaging>
+    <name>Apache Karaf :: Assemblies :: Features :: Spring Legacy</name>
+    <description>Spring Support</description>
+
+    <properties>
+        <appendedResourcesDirectory>${basedir}/../../../../etc/appended-resources</appendedResourcesDirectory>
+    </properties>
+
+    <dependencies>
+
+        <!-- Framework distribution -->
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>framework</artifactId>
+            <type>kar</type>
+            <scope>provided</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>standard</artifactId>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- spring-dm deps -->
+        <dependency>
+            <groupId>org.springframework.osgi</groupId>
+            <artifactId>spring-osgi-io</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.osgi</groupId>
+            <artifactId>spring-osgi-core</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.osgi</groupId>
+            <artifactId>spring-osgi-extender</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.osgi</groupId>
+            <artifactId>spring-osgi-annotation</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.deployer</groupId>
+            <artifactId>org.apache.karaf.deployer.spring</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.bundle</groupId>
+            <artifactId>org.apache.karaf.bundle.springstate</artifactId>
+            <scope>provided</scope>
+        </dependency>
+
+        <!-- spring-dm-web deps -->
+        <dependency>
+            <groupId>org.springframework.osgi</groupId>
+            <artifactId>spring-osgi-web</artifactId>
+            <scope>provided</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.springframework</groupId>
+                    <artifactId>org.springframework.core</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>javax.servlet</groupId>
+                    <artifactId>com.springsource.javax.servlet</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.aopalliance</groupId>
+                    <artifactId>com.springsource.org.aopalliance</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>${project.basedir}/src/main/feature</directory>
+                <filtering>true</filtering>
+                <targetPath>${project.build.directory}/feature</targetPath>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>resources</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.karaf.tooling</groupId>
+                <artifactId>karaf-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>verify</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>verify</goal>
+                        </goals>
+                        <configuration>
+                            <descriptors>
+                                <descriptor>mvn:org.apache.karaf.features/framework/${project.version}/xml/features</descriptor>
+                                <descriptor>file:${project.build.directory}/feature/feature.xml</descriptor>
+                            </descriptors>
+                            <distribution>org.apache.karaf.features:framework</distribution>
+                            <javase>1.8</javase>
+                            <framework>
+                                <feature>framework</feature>
+                            </framework>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>attach-artifacts</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>attach-artifact</goal>
+                        </goals>
+                        <configuration>
+                            <artifacts>
+                                <artifact>
+                                    <file>target/feature/feature.xml</file>
+                                    <classifier>features</classifier>
+                                    <type>xml</type>
+                                </artifact>
+                            </artifacts>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/karaf/blob/13c7bf86/assemblies/features/spring-legacy/src/main/feature/feature.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/spring-legacy/src/main/feature/feature.xml b/assemblies/features/spring-legacy/src/main/feature/feature.xml
new file mode 100644
index 0000000..74f043e
--- /dev/null
+++ b/assemblies/features/spring-legacy/src/main/feature/feature.xml
@@ -0,0 +1,363 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+
+      Licensed to the Apache Software Foundation (ASF) under one or more
+      contributor license agreements.  See the NOTICE file distributed with
+      this work for additional information regarding copyright ownership.
+      The ASF licenses this file to You under the Apache License, Version 2.0
+      (the "License"); you may not use this file except in compliance with
+      the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+      Unless required by applicable law or agreed to in writing, software
+      distributed under the License is distributed on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+      See the License for the specific language governing permissions and
+      limitations under the License.
+-->
+<features name="spring-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
+
+    <repository>mvn:org.ops4j.pax.web/pax-web-features/${pax.web.version}/xml/features</repository>
+    <repository>mvn:org.apache.karaf.features/standard/${project.version}/xml/features</repository>
+
+    <!-- Spring DM support -->
+    <feature name="spring-dm" description="Spring DM support" version="${spring.osgi.version}">
+        <feature version="[2.5.6,4)">spring</feature>
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.cglib/${cglib.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.osgi/spring-osgi-io/${spring.osgi.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.osgi/spring-osgi-core/${spring.osgi.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.osgi/spring-osgi-extender/${spring.osgi.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.osgi/spring-osgi-annotation/${spring.osgi.version}</bundle>
+        <conditional>
+            <condition>deployer</condition>
+            <bundle start-level="30">mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.spring/${project.version}</bundle>
+        </conditional>
+        <conditional>
+            <condition>bundle</condition>
+            <bundle start-level="30">mvn:org.apache.karaf.bundle/org.apache.karaf.bundle.springstate/${project.version}</bundle>
+        </conditional>
+    </feature>
+
+    <feature name="spring-dm-web" description="Spring DM Web support" version="${spring.osgi.version}">
+        <feature>spring-dm</feature>
+        <feature version="[2.5.6,4)">spring-web</feature>
+        <feature>http</feature>
+        <bundle start-level="30">mvn:org.springframework.osgi/spring-osgi-web/${spring.osgi.version}</bundle>
+    </feature>
+
+    <!-- Spring 3.1.x support -->
+
+    <feature name="spring" description="Spring 3.1.x support" version="${spring31.version}">
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-core/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-asm/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-expression/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-beans/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-aop/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-context/${spring31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-context-support/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-aspects" description="Spring 3.1.x AOP support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-aspects/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-instrument" description="Spring 3.1.x Instrument support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-instrument/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-jdbc" description="Spring 3.1.x JDBC support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-jdbc/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-jms" description="Spring 3.1.x JMS support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring-tx</feature>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-jms/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-struts" description="Spring 3.1.x Struts support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring-web</feature>
+        <feature>war</feature>
+        <bundle dependency="true" start-level="30">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
+        <bundle dependency="true" start-level="30">mvn:commons-beanutils/commons-beanutils/${commons-beanutils.version}</bundle>
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.struts/${struts.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-struts/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-test" description="Spring 3.1.x Test support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-test/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-orm" description="Spring 3.1.x ORM support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-orm/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-oxm" description="Spring 3.1.x OXM support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-oxm/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-tx" description="Spring 3.1.x Transaction (TX) support" version="${spring31.version}">
+        <feature version="[${spring31.version},3.2)">spring</feature>
+        <bundle start-level="30">mvn:org.springframework/spring-tx/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-web" description="Spring 3.1.x Web support" version="${spring31.version}">
+    	<feature version="[${spring31.version},3.2)">spring</feature>
+    	<feature>http</feature>
+    	<bundle start-level="30">mvn:org.springframework/spring-web/${spring31.version}</bundle>
+		<bundle start-level="30">mvn:org.springframework/spring-webmvc/${spring31.version}</bundle>
+    </feature>
+
+    <feature name="spring-web-portlet" description="Spring 3.1.x Web Portlet support" version="${spring31.version}">
+        <feature prerequisite="true">wrap</feature>
+        <feature version="[${spring31.version},3.2)">spring-web</feature>
+        <bundle dependency="true" start-level="30">wrap:mvn:javax.portlet/portlet-api/${portlet-api.version}$Export-Package=javax.portlet.*;version=2.0</bundle>
+        <bundle start-level="30">mvn:org.springframework/spring-webmvc-portlet/${spring31.version}</bundle>
+    </feature>
+
+    <!-- Spring 3.2.x support -->
+
+    <feature name="spring" description="Spring 3.2.x support" version="${spring32.version}">
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-aspects" description="Spring 3.2.x AOP support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-instrument" description="Spring 3.2.x Instrument support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-jdbc" description="Spring 3.2.x JDBC support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-jms" description="Spring 3.2.x JMS support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring-tx</feature>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jms/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-struts" description="Spring 3.2.x Struts support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring-web</feature>
+        <feature>war</feature>
+        <bundle dependency="true" start-level="30">mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>
+        <bundle dependency="true" start-level="30">mvn:commons-beanutils/commons-beanutils/${commons-beanutils.version}</bundle>
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.struts/${struts.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-struts/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-test" description="Spring 3.2.x Test support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-orm" description="Spring 3.2.x ORM support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-oxm" description="Spring 3.2.x OXM support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-tx" description="Spring 3.2.x Transaction (TX) support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-web" description="Spring 3.2.x Web support" version="${spring32.version}">
+        <feature version="[${spring32.version},3.3)">spring</feature>
+        <feature>http</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring32.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring32.version}</bundle>
+    </feature>
+
+    <feature name="spring-web-portlet" description="Spring 3.2.x Web Portlet support" version="${spring32.version}">
+        <feature prerequisite="true">wrap</feature>
+        <feature version="[${spring32.version},3.3)">spring-web</feature>
+        <bundle dependency="true" start-level="30">wrap:mvn:javax.portlet/portlet-api/${portlet-api.version}$Export-Package=javax.portlet.*;version=2.0</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc-portlet/${spring32.version}</bundle>
+    </feature>
+
+    <!-- Spring 4.0.x support -->
+
+    <feature name="spring" description="Spring 4.0.x support" version="${spring40.version}">
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-aspects" description="Spring 4.0.x AOP support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-instrument" description="Spring 4.0.x Instrument support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-jdbc" description="Spring 4.0.x JDBC support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-jms" description="Spring 4.0.x JMS support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring-tx</feature>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jms/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-test" description="Spring 4.0.x Test support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-orm" description="Spring 4.0.x ORM support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-oxm" description="Spring 4.0.x OXM support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-tx" description="Spring 4.0.x Transaction (TX) support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-web" description="Spring 4.0.x Web support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring</feature>
+        <feature>http</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring40.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-web-portlet" description="Spring 4.0.x Web Portlet support" version="${spring40.version}">
+        <feature prerequisite="true">wrap</feature>
+        <feature version="[${spring40.version},4.1)">spring-web</feature>
+        <bundle dependency="true" start-level="30">wrap:mvn:javax.portlet/portlet-api/${portlet-api.version}$Export-Package=javax.portlet.*;version=2.0</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc-portlet/${spring40.version}</bundle>
+    </feature>
+
+    <feature name="spring-websocket" description="Spring 4.0.x WebSocket support" version="${spring40.version}">
+        <feature version="[${spring40.version},4.1)">spring-web</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring40.version}</bundle>
+    </feature>
+
+    <!-- Spring 4.1.x support -->
+
+    <feature name="spring" description="Spring 4.1.x support" version="${spring41.version}">
+        <bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-aspects" description="Spring 4.1.x AOP support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-instrument" description="Spring 4.1.x Instrument support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-jdbc" description="Spring 4.1.x JDBC support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-jms" description="Spring 4.1.x JMS support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring-tx</feature>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
+        <bundle dependency="true" start-level="10">mvn:org.apache.geronimo.specs/geronimo-jms_1.1_spec/${geronimo.jms-spec.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jms/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-test" description="Spring 4.1.x Test support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-orm" description="Spring 4.1.x ORM support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-oxm" description="Spring 4.1.x OXM support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-tx" description="Spring 4.1.x Transaction (TX) support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-web" description="Spring 4.1.x Web support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring</feature>
+        <feature>http</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring41.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-web-portlet" description="Spring 4.1.x Web Portlet support" version="${spring41.version}">
+        <feature prerequisite="true">wrap</feature>
+        <feature version="[${spring41.version},4.2)">spring-web</feature>
+        <bundle dependency="true" start-level="30">wrap:mvn:javax.portlet/portlet-api/${portlet-api.version}$Export-Package=javax.portlet.*;version=2.0</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc-portlet/${spring41.version}</bundle>
+    </feature>
+
+    <feature name="spring-websocket" description="Spring 4.1.x WebSocket support" version="${spring41.version}">
+        <feature version="[${spring41.version},4.2)">spring-web</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring41.version}</bundle>
+    </feature>
+
+    <!-- Spring Security support -->
+
+    <feature name="spring-security" description="Spring Security 3.1.x support" version="${spring.security31.version}">
+        <feature>war</feature>
+	    <feature version="[3,4)">spring-web</feature>
+        <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aspectj/${aspectj.bundle.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.security/spring-security-core/${spring.security31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.security/spring-security-config/${spring.security31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.security/spring-security-web/${spring.security31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.security/spring-security-acl/${spring.security31.version}</bundle>
+        <bundle start-level="30">mvn:org.springframework.security/spring-security-taglibs/${spring.security31.version}</bundle>
+    </feature>
+
+</features>


Mime
View raw message