Merge pull request #657 from jbonofre/AMQ-8026

[AMQ-8026] Upgrade to Spring 5.3.7
diff --git a/activemq-karaf/src/main/resources/features-core.xml b/activemq-karaf/src/main/resources/features-core.xml
index 31187aa..a3e0829 100644
--- a/activemq-karaf/src/main/resources/features-core.xml
+++ b/activemq-karaf/src/main/resources/features-core.xml
@@ -22,7 +22,7 @@
 
     <!-- Bundles needed if only client will be deployed in the container -->
     <feature name="activemq-client" description="ActiveMQ client libraries" version="${project.version}">
-        <feature version="[4,5)">spring</feature>
+        <feature version="[5,6)">spring</feature>
         <feature>aries-blueprint</feature>
         <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-jta_1.1_spec/1.1.1</bundle>
diff --git a/activemq-osgi/pom.xml b/activemq-osgi/pom.xml
index b34ea17..573ba4a 100644
--- a/activemq-osgi/pom.xml
+++ b/activemq-osgi/pom.xml
@@ -155,6 +155,7 @@
               sun.misc*;resolution:=optional,
               sun.nio*;resolution:=optional,
               sun.rmi*;resolution:=optional,
+              javax.xml.bind*;version="[2,3)",
               javax.jmdns*;resolution:=optional,
               javax.resource*;resolution:=optional,
               javax.servlet*;resolution:=optional,
diff --git a/activemq-spring/src/test/java/org/apache/activemq/spring/ListenerTest.java b/activemq-spring/src/test/java/org/apache/activemq/spring/ListenerTest.java
index e5c0831..7aac604 100644
--- a/activemq-spring/src/test/java/org/apache/activemq/spring/ListenerTest.java
+++ b/activemq-spring/src/test/java/org/apache/activemq/spring/ListenerTest.java
@@ -22,10 +22,11 @@
 import org.junit.Assert;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.springframework.test.annotation.Commit;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.transaction.TransactionConfiguration;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import javax.jms.*;
@@ -33,7 +34,8 @@
 @RunWith(SpringJUnit4ClassRunner.class)
 
 @ContextConfiguration(locations = {"classpath:spring/spring.xml"})
-@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = false)
+@Transactional
+@Commit
 public class ListenerTest {
     private static final Logger LOG = LoggerFactory.getLogger(ListenerTest.class);
 
diff --git a/activemq-spring/src/test/java/org/apache/activemq/spring/ParallelXATransactionTest.java b/activemq-spring/src/test/java/org/apache/activemq/spring/ParallelXATransactionTest.java
index 867e87e..a9ddc43 100644
--- a/activemq-spring/src/test/java/org/apache/activemq/spring/ParallelXATransactionTest.java
+++ b/activemq-spring/src/test/java/org/apache/activemq/spring/ParallelXATransactionTest.java
@@ -24,13 +24,14 @@
 import org.junit.runner.RunWith;
 import org.springframework.jms.core.JmsTemplate;
 import org.springframework.jms.core.MessageCreator;
+import org.springframework.test.annotation.Commit;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.test.context.transaction.TransactionConfiguration;
 import org.springframework.transaction.PlatformTransactionManager;
 import org.springframework.transaction.TransactionException;
 import org.springframework.transaction.TransactionStatus;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.support.TransactionCallbackWithoutResult;
 import org.springframework.transaction.support.TransactionTemplate;
 
@@ -43,7 +44,8 @@
 @RunWith(SpringJUnit4ClassRunner.class)
 
 @ContextConfiguration(locations = {"classpath:spring/xa.xml"})
-@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = false)
+@Transactional
+@Commit
 public class ParallelXATransactionTest {
 
     private static final Logger LOG = LoggerFactory.getLogger(ParallelXATransactionTest.class);
diff --git a/pom.xml b/pom.xml
index 705576e..080a8d1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -100,7 +100,7 @@
     <shiro-version>1.7.1</shiro-version>
     <slf4j-version>1.7.30</slf4j-version>
     <snappy-version>1.1.2</snappy-version>
-    <spring-version>4.3.30.RELEASE</spring-version>
+    <spring-version>5.3.7</spring-version>
     <taglibs-version>1.2.5</taglibs-version>
     <velocity-version>2.3</velocity-version>
     <xalan-version>2.7.2</xalan-version>