You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2019/11/08 07:22:46 UTC

[karaf] branch karaf-4.2.x updated: [KARAF-6506] Add Spring 5.2.0.RELEASE features

This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch karaf-4.2.x
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/karaf-4.2.x by this push:
     new 52fa318  [KARAF-6506] Add Spring 5.2.0.RELEASE features
52fa318 is described below

commit 52fa3189cffb6dc171e1d7ee80dda8a20c9b4663
Author: Jean-Baptiste Onofré <jb...@apache.org>
AuthorDate: Thu Nov 7 18:34:25 2019 +0100

    [KARAF-6506] Add Spring 5.2.0.RELEASE features
    
    (cherry picked from commit 70dc6024ff5efcb18774d9a372dc32243ce7bbea)
---
 .../spring-legacy/src/main/feature/feature.xml     | 75 +++++++++++++++++++
 .../features/spring/src/main/feature/feature.xml   | 84 +++++++++++-----------
 itests/test/pom.xml                                |  2 +
 .../java/org/apache/karaf/itests/BaseTest.java     |  1 +
 .../itests/features/Spring51FeaturesTest.java      | 23 ++++++
 ...FeaturesTest.java => Spring52FeaturesTest.java} | 35 +++++----
 pom.xml                                            |  1 +
 7 files changed, 166 insertions(+), 55 deletions(-)

diff --git a/assemblies/features/spring-legacy/src/main/feature/feature.xml b/assemblies/features/spring-legacy/src/main/feature/feature.xml
index 2a64ad5..0228667 100644
--- a/assemblies/features/spring-legacy/src/main/feature/feature.xml
+++ b/assemblies/features/spring-legacy/src/main/feature/feature.xml
@@ -582,6 +582,81 @@
         <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring50.version}</bundle>
     </feature>
 
+    <!-- Spring 5.1.x support -->
+
+    <feature name="spring" description="Spring 5.1.x support" version="${spring51.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/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-aspects" description="Spring 5.1.x AOP support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-instrument" description="Spring 5.1.x Instrument support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-jdbc" description="Spring 5.1.x JDBC support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-jms" description="Spring 5.1.x JMS support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.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/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-messaging" description="Spring 5.1.x Messaging support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-messaging/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-test" description="Spring 5.1.x Test support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle dependency="true">mvn:javax.websocket/javax.websocket-api/1.1</bundle>
+        <bundle dependency="true">mvn:org.apache.httpcomponents/httpcore-osgi/4.4.6</bundle>
+        <bundle dependency="true">mvn:org.apache.httpcomponents/httpclient-osgi/4.5.2</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-orm" description="Spring 5.1.x ORM support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-oxm" description="Spring 5.1.x OXM support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-tx" description="Spring 5.1.x Transaction (TX) support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-web" description="Spring 5.1.x Web support" version="${spring51.version}">
+        <feature version="[${spring51.version},5.2)">spring</feature>
+        <feature>http</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring51.version}</bundle>
+    </feature>
+
+    <feature name="spring-websocket" description="Spring 5.1.x WebSocket support" version="${spring51.version}">
+        <bundle dependency="true">mvn:javax.websocket/javax.websocket-api/1.1</bundle>
+        <feature version="[${spring51.version},5.2)">spring-web</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring51.version}</bundle>
+    </feature>
+
     <!-- Spring Security support -->
 
     <feature name="spring-security" description="Spring Security 3.1.x support" version="${spring.security31.version}">
diff --git a/assemblies/features/spring/src/main/feature/feature.xml b/assemblies/features/spring/src/main/feature/feature.xml
index 55e677a..49dce1d 100644
--- a/assemblies/features/spring/src/main/feature/feature.xml
+++ b/assemblies/features/spring/src/main/feature/feature.xml
@@ -22,79 +22,79 @@
 
     <repository>mvn:org.apache.karaf.features/standard/${project.version}/xml/features</repository>
 
-    <!-- Spring 5.1.x support -->
+    <!-- Spring 5.2.x support -->
 
-    <feature name="spring" description="Spring 5.1.x support" version="${spring51.version}">
+    <feature name="spring" description="Spring 5.2.x support" version="${spring52.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/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-aspects" description="Spring 5.1.x AOP support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring51.version}</bundle>
+    <feature name="spring-aspects" description="Spring 5.2.x AOP support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aspects/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-instrument" description="Spring 5.1.x Instrument support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring51.version}</bundle>
+    <feature name="spring-instrument" description="Spring 5.2.x Instrument support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-instrument/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-jdbc" description="Spring 5.1.x JDBC support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring-tx</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring51.version}</bundle>
+    <feature name="spring-jdbc" description="Spring 5.2.x JDBC support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring-tx</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jdbc/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-jms" description="Spring 5.1.x JMS support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring-tx</feature>
+    <feature name="spring-jms" description="Spring 5.2.x JMS support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.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/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-jms/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-messaging" description="Spring 5.1.x Messaging support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-messaging/${spring51.version}</bundle>
+    <feature name="spring-messaging" description="Spring 5.2.x Messaging support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-messaging/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-test" description="Spring 5.1.x Test support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
+    <feature name="spring-test" description="Spring 5.2.x Test support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
         <bundle dependency="true">mvn:javax.websocket/javax.websocket-api/1.1</bundle>
         <bundle dependency="true">mvn:org.apache.httpcomponents/httpcore-osgi/4.4.6</bundle>
         <bundle dependency="true">mvn:org.apache.httpcomponents/httpclient-osgi/4.5.2</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-test/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-orm" description="Spring 5.1.x ORM support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring-jdbc</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring51.version}</bundle>
+    <feature name="spring-orm" description="Spring 5.2.x ORM support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring-jdbc</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-orm/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-oxm" description="Spring 5.1.x OXM support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring51.version}</bundle>
+    <feature name="spring-oxm" description="Spring 5.2.x OXM support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-oxm/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-tx" description="Spring 5.1.x Transaction (TX) support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring51.version}</bundle>
+    <feature name="spring-tx" description="Spring 5.2.x Transaction (TX) support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-tx/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-web" description="Spring 5.1.x Web support" version="${spring51.version}">
-        <feature version="[${spring51.version},5.2)">spring</feature>
+    <feature name="spring-web" description="Spring 5.2.x Web support" version="${spring52.version}">
+        <feature version="[${spring52.version},5.3)">spring</feature>
         <feature>http</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring51.version}</bundle>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring51.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring52.version}</bundle>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-webmvc/${spring52.version}</bundle>
     </feature>
 
-    <feature name="spring-websocket" description="Spring 5.1.x WebSocket support" version="${spring51.version}">
+    <feature name="spring-websocket" description="Spring 5.2.x WebSocket support" version="${spring52.version}">
         <bundle dependency="true">mvn:javax.websocket/javax.websocket-api/1.1</bundle>
-        <feature version="[${spring51.version},5.2)">spring-web</feature>
-        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring51.version}</bundle>
+        <feature version="[${spring52.version},5.3)">spring-web</feature>
+        <bundle start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-websocket/${spring52.version}</bundle>
     </feature>
 
     <!-- Spring Security -->
diff --git a/itests/test/pom.xml b/itests/test/pom.xml
index 8988009..b7d9268 100644
--- a/itests/test/pom.xml
+++ b/itests/test/pom.xml
@@ -307,6 +307,7 @@
                         <spring43.version>${spring43.version}</spring43.version>
                         <spring50.version>${spring50.version}</spring50.version>
                         <spring51.version>${spring51.version}</spring51.version>
+                        <spring52.version>${spring52.version}</spring52.version>
                         <spring.security31.version>${spring.security31.version}</spring.security31.version>
                         <spring.security42.version>${spring.security42.version}</spring.security42.version>
                         <spring.security51.version>${spring.security51.version}</spring.security51.version>
@@ -369,6 +370,7 @@
                                 <spring43.version>${spring43.version}</spring43.version>
                                 <spring50.version>${spring50.version}</spring50.version>
                                 <spring51.version>${spring51.version}</spring51.version>
+                                <spring52.version>${spring52.version}</spring52.version>
                                 <spring.security31.version>${spring.security31.version}</spring.security31.version>
                                 <spring.security42.version>${spring.security42.version}</spring.security42.version>
                                 <spring.security51.version>${spring.security51.version}</spring.security51.version>
diff --git a/itests/test/src/test/java/org/apache/karaf/itests/BaseTest.java b/itests/test/src/test/java/org/apache/karaf/itests/BaseTest.java
index 85e7dac..e9534b9 100644
--- a/itests/test/src/test/java/org/apache/karaf/itests/BaseTest.java
+++ b/itests/test/src/test/java/org/apache/karaf/itests/BaseTest.java
@@ -33,6 +33,7 @@ public class BaseTest extends KarafTestSupport {
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring43.version", System.getProperty("spring43.version")),
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring50.version", System.getProperty("spring50.version")),
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring51.version", System.getProperty("spring51.version")),
+                KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring52.version", System.getProperty("spring52.version")),
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring.security31.version", System.getProperty("spring.security31.version")),
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring.security42.version", System.getProperty("spring.security42.version")),
                 KarafDistributionOption.editConfigurationFilePut("etc/system.properties", "spring.security51.version", System.getProperty("spring.security51.version")),
diff --git a/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java b/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java
index 9bf1119..af2452c 100644
--- a/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java
+++ b/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java
@@ -16,14 +16,37 @@ package org.apache.karaf.itests.features;
 import org.apache.karaf.itests.BaseTest;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Configuration;
+import org.ops4j.pax.exam.MavenUtils;
+import org.ops4j.pax.exam.Option;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerClass;
 
+import java.util.Arrays;
+import java.util.LinkedList;
+import java.util.List;
+
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
+
 @RunWith(PaxExam.class)
 @ExamReactorStrategy(PerClass.class)
 public class Spring51FeaturesTest extends BaseTest {
 
+    @Configuration
+    public Option[] config() {
+        String version = MavenUtils.getArtifactVersion("org.apache.karaf", "apache-karaf");
+        List<Option> result = new LinkedList<>(Arrays.asList(super.config()));
+        result.add(editConfigurationFilePut("etc/org.apache.karaf.features.cfg", "featuresRepositories",
+                "mvn:org.apache.karaf.features/framework/" + version + "/xml/features, " +
+                        "mvn:org.apache.karaf.features/spring/" + version + "/xml/features, " +
+                        "mvn:org.apache.karaf.features/spring-legacy/" + version + "/xml/features, " +
+                        "mvn:org.apache.karaf.features/enterprise/" + version + "/xml/features, " +
+                        "mvn:org.apache.karaf.features/enterprise-legacy/" + version + "/xml/features, " +
+                        "mvn:org.apache.karaf.features/standard/" + version + "/xml/features"));
+        return result.toArray(new Option[result.size()]);
+    }
+
     @Test
     public void installSpringFeature() throws Exception {
         installAssertAndUninstallFeature("spring", System.getProperty("spring51.version"));
diff --git a/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java b/itests/test/src/test/java/org/apache/karaf/itests/features/Spring52FeaturesTest.java
similarity index 79%
copy from itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java
copy to itests/test/src/test/java/org/apache/karaf/itests/features/Spring52FeaturesTest.java
index 9bf1119..74fb762 100644
--- a/itests/test/src/test/java/org/apache/karaf/itests/features/Spring51FeaturesTest.java
+++ b/itests/test/src/test/java/org/apache/karaf/itests/features/Spring52FeaturesTest.java
@@ -16,72 +16,81 @@ package org.apache.karaf.itests.features;
 import org.apache.karaf.itests.BaseTest;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Configuration;
+import org.ops4j.pax.exam.MavenUtils;
+import org.ops4j.pax.exam.Option;
 import org.ops4j.pax.exam.junit.PaxExam;
 import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
 import org.ops4j.pax.exam.spi.reactors.PerClass;
 
+import java.util.Arrays;
+import java.util.LinkedList;
+import java.util.List;
+
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
+
 @RunWith(PaxExam.class)
 @ExamReactorStrategy(PerClass.class)
-public class Spring51FeaturesTest extends BaseTest {
+public class Spring52FeaturesTest extends BaseTest {
 
     @Test
     public void installSpringFeature() throws Exception {
-        installAssertAndUninstallFeature("spring", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringAspectsFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-aspects", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-aspects", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringInstrumentFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-instrument", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-instrument", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringJdbcFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-jdbc", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-jdbc", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringJmsFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-jms", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-jms", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringMessagingFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-messaging", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-messaging", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringTestFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-test", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-test", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringOrmFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-orm", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-orm", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringOxmFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-oxm", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-oxm", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringTxFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-tx", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-tx", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringWebFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-web", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-web", System.getProperty("spring52.version"));
     }
 
     @Test
     public void installSpringWebSocketFeature() throws Exception {
-        installAssertAndUninstallFeature("spring-websocket", System.getProperty("spring51.version"));
+        installAssertAndUninstallFeature("spring-websocket", System.getProperty("spring52.version"));
     }
 
     // Spring Security
diff --git a/pom.xml b/pom.xml
index bdea313..391fdcb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -302,6 +302,7 @@
         <spring43.version>4.3.25.RELEASE_1</spring43.version>
         <spring50.version>5.0.15.RELEASE_1</spring50.version>
         <spring51.version>5.1.9.RELEASE_1</spring51.version>
+        <spring52.version>5.2.0.RELEASE_1</spring52.version>
         <spring.security31.version>3.1.4.RELEASE</spring.security31.version>
         <spring.security42.version>4.2.4.RELEASE_1</spring.security42.version>
         <spring.security51.version>5.1.5.RELEASE_1</spring.security51.version>