Package upgrades

Upgrade third party packages to address security vulnerabilities.
Provide new parent pom for spring boot 2.5, which is not
backward compatible with spring boot 2.3

Issue-ID: CCSDK-3415
Signed-off-by: Dan Timoney <dtimoney@att.com>
Change-Id: Iffbfffb6709aeec48c35dd604b9293fb3af34a10
diff --git a/springboot/spring-boot-setup/pom.xml b/springboot/spring-boot-setup/pom.xml
index d41913b..fe5a295 100644
--- a/springboot/spring-boot-setup/pom.xml
+++ b/springboot/spring-boot-setup/pom.xml
@@ -71,6 +71,30 @@
                             <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
+                    <execution>
+                        <id>create-springboot25-parent-pom</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>../springboot25</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>pom-template.xml</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                            <escapeString>\</escapeString>
+                            <filters>
+                                <filter>${basedir}/src/main/properties/springboot25.properties</filter>
+                            </filters>
+                            <encoding>UTF-8</encoding>
+                        </configuration>
+                    </execution>
                 </executions>
             </plugin>
             <plugin>
@@ -100,6 +124,17 @@
                             <destinationFile>../springboot2/pom.xml</destinationFile>
                         </configuration>
                     </execution>
+                    <execution>
+                        <id>rename-springboot25-parent-pom</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>rename</goal>
+                        </goals>
+                        <configuration>
+                            <sourceFile>../springboot25/pom-template.xml</sourceFile>
+                            <destinationFile>../springboot25/pom.xml</destinationFile>
+                        </configuration>
+                    </execution>
                 </executions>
             </plugin>
         </plugins>
diff --git a/springboot/spring-boot-setup/src/main/properties/springboot1.properties b/springboot/spring-boot-setup/src/main/properties/springboot1.properties
index c4f4e01..e99c5a8 100644
--- a/springboot/spring-boot-setup/src/main/properties/springboot1.properties
+++ b/springboot/spring-boot-setup/src/main/properties/springboot1.properties
@@ -2,4 +2,13 @@
 springbootparent.groupId=org.springframework.boot
 springbootparent.version=1.5.22.RELEASE
 springboot.project.artifactId=spring-boot-1-starter-parent
-spring.version=4.3.25.RELEASE
\ No newline at end of file
+spring.version=4.3.25.RELEASE
+springboot.httpcomponents.core.version=4.4.14
+springboot.httpcomponents.client.version=4.5.13
+springboot.jackson.version=2.11.4
+springboot.logback.version=1.2.3
+springboot.netty.ssl.version=2.0.39.Final
+springboot.jersey.version=2.30.1
+springboot.slf4j.version=1.7.25
+springboot.springfox.version=2.9.2
+springboot.tomcat.jdbc.version=9.0.46
\ No newline at end of file
diff --git a/springboot/spring-boot-setup/src/main/properties/springboot2.properties b/springboot/spring-boot-setup/src/main/properties/springboot2.properties
index 6e69d7f..1389b93 100644
--- a/springboot/spring-boot-setup/src/main/properties/springboot2.properties
+++ b/springboot/spring-boot-setup/src/main/properties/springboot2.properties
@@ -2,4 +2,13 @@
 springbootparent.groupId=org.springframework.boot
 springbootparent.version=2.3.12.RELEASE
 springboot.project.artifactId=spring-boot-starter-parent
-spring.version=5.2.15.RELEASE
\ No newline at end of file
+spring.version=5.2.15.RELEASE
+springboot.httpcomponents.core.version=4.4.14
+springboot.httpcomponents.client.version=4.5.13
+springboot.jackson.version=2.11.4
+springboot.logback.version=1.2.3
+springboot.netty.ssl.version=2.0.39.Final
+springboot.jersey.version=2.30.1
+springboot.slf4j.version=1.7.25
+springboot.springfox.version=2.9.2
+springboot.tomcat.jdbc.version=9.0.46
diff --git a/springboot/spring-boot-setup/src/main/properties/springboot25.properties b/springboot/spring-boot-setup/src/main/properties/springboot25.properties
new file mode 100644
index 0000000..2681cb0
--- /dev/null
+++ b/springboot/spring-boot-setup/src/main/properties/springboot25.properties
@@ -0,0 +1,14 @@
+springbootparent.artifactId=spring-boot-starter-parent
+springbootparent.groupId=org.springframework.boot
+springbootparent.version=2.5.3
+springboot.project.artifactId=spring-boot-25-starter-parent
+spring.version=5.3.9
+springboot.httpcomponents.core.version=4.4.14
+springboot.httpcomponents.client.version=4.5.13
+springboot.jackson.version=2.12.4
+springboot.logback.version=1.2.4
+springboot.netty.ssl.version=2.0.40.Final
+springboot.jersey.version=2.33
+springboot.slf4j.version=1.7.32
+springboot.springfox.version=3.0.0
+springboot.tomcat.jdbc.version=9.0.50
\ No newline at end of file
diff --git a/springboot/spring-boot-setup/src/main/resources/pom-template.xml b/springboot/spring-boot-setup/src/main/resources/pom-template.xml
index 845ea8a..1c10ad7 100644
--- a/springboot/spring-boot-setup/src/main/resources/pom-template.xml
+++ b/springboot/spring-boot-setup/src/main/resources/pom-template.xml
@@ -119,23 +119,24 @@
         <!-- Managed dependency versions -->
         <antlr.version>4.8-1</antlr.version>
         <commons.lang.version>2.6</commons.lang.version>
-        <apache.httpcomponents.core.version>4.4.14</apache.httpcomponents.core.version>
-        <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
+        <apache.httpcomponents.core.version>${springboot.httpcomponents.core.version}</apache.httpcomponents.core.version>
+        <apache.httpcomponents.client.version>${springboot.httpcomponents.client.version}</apache.httpcomponents.client.version>
         <derby.version>10.14.2.0</derby.version>
         <eelf.version>1.0.0</eelf.version>
         <grpc.version>1.25.0</grpc.version>
-        <netty-ssl>2.0.39.Final</netty-ssl>
+        <netty-ssl>${springboot.netty.ssl.version}</netty-ssl>
         <protobuff.java.version>3.10.0</protobuff.java.version>
         <protobuff.java.utils.version>3.10.0</protobuff.java.utils.version>
-        <jersey.version>2.30.1</jersey.version>
-        <jersey.client.version>2.30.1</jersey.client.version>
+        <jersey.version>${springboot.jersey.version}</jersey.version>
+        <jersey.client.version>${springboot.jersey.version}</jersey.client.version>
         <jettison.version>1.3.8</jettison.version>
         <logback.version>1.2.3</logback.version>
         <mariadb.connector.version>2.7.3</mariadb.connector.version>
         <mariadb4j.version>2.4.0</mariadb4j.version>
-        <slf4j.version>1.7.25</slf4j.version>
+        <slf4j.version>${springboot.slf4j.version}</slf4j.version>
+        <springfox.version>${springboot.springfox.version}</springfox.version>
         <testng.version>6.14.3</testng.version>
-        <tomcat-jdbc.version>9.0.46</tomcat-jdbc.version>
+        <tomcat-jdbc.version>${springboot.tomcat.jdbc.version}</tomcat-jdbc.version>
         <dependency-list.file>direct-dependencies.txt</dependency-list.file>
     </properties>
 
@@ -152,6 +153,13 @@
                 <scope>import</scope>
             </dependency>
             <dependency>
+                <groupId>com.fasterxml.jackson</groupId>
+                <artifactId>jackson-bom</artifactId>
+                <version>${springboot.jackson.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
                 <groupId>org.onap.ccsdk.sli.core</groupId>
                 <artifactId>sli-common</artifactId>
                 <version>\${ccsdk.sli.core.version}</version>