diff --git a/.github/workflows/java.yaml b/.github/workflows/java.yaml
index f021fbb..9afea0a 100644
--- a/.github/workflows/java.yaml
+++ b/.github/workflows/java.yaml
@@ -15,12 +15,9 @@ jobs:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.experimental }}
strategy:
+ strategy:
matrix:
- jdk: [8, 11]
- experimental: [false]
- include:
- - jdk: 17
- experimental: true
+ jdk: [17]
steps:
- uses: actions/checkout@v3
- name: Set up JDK ${{ matrix.jdk }}
diff --git a/README.md b/README.md
index b0232ff..de32322 100644
--- a/README.md
+++ b/README.md
@@ -11,9 +11,9 @@ The artifact built from this project is a WAR file that can be deployed into CIC
## Prerequisites
-- CICS TS V5.3 or later
+- CICS TS V6.1 or later
- A configured Liberty JVM server in CICS
-- Java SE 1.8 or later on the workstation
+- Requires Java 17 or later. on the workstation
- An Eclipse development environment on the workstation (optional)
- Either Gradle or Apache Maven on the workstation (optional if using Wrappers)
- A CICS TSMODEL resource with the attribute `Recovery(ON)` for the TSQ called `EXAMPLE`.
diff --git a/build.gradle b/build.gradle
index 9681729..37d2254 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,6 +1,6 @@
plugins
{
- id 'org.springframework.boot' version '2.7.0'
+ id 'org.springframework.boot' version '3.5.9'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id 'eclipse'
@@ -23,25 +23,23 @@ eclipse
}
+
repositories
{
mavenCentral()
}
-java
-{
- toolchain
- {
+java {
+ toolchain {
languageVersion = JavaLanguageVersion.of(java_version)
- vendor = JvmVendorSpec.IBM
- implementation = JvmImplementation.J9
}
}
+
dependencies
{
// CICS BOM (as of May 2020)
- compileOnly enforcedPlatform('com.ibm.cics:com.ibm.cics.ts.bom:5.5-20200519131930-PH25409')
+ compileOnly enforcedPlatform('com.ibm.cics:com.ibm.cics.ts.bom:6.1-20250812133513-PH63856')
// Don't include JCICS in the final build (no need for version because we have BOM)
compileOnly("com.ibm.cics:com.ibm.cics.server")
@@ -51,15 +49,15 @@ dependencies
// Don't include TomCat in the runtime build
providedRuntime("org.springframework.boot:spring-boot-starter-tomcat")
-
- // Java Transaction API (this is newer and covers up to jta-1.3) - don't include in the final build
- compileOnly ("javax.transaction:javax.transaction-api")
-
+
+ // Java Transaction API - don't include in the final build
+ compileOnly 'jakarta.transaction:jakarta.transaction-api'
// Spring's Transactional API
implementation ("org.springframework:spring-tx")
}
-
+//Don't generate a FAT bootWar, we don't need to run standalone
+bootWar { enabled = false }
publishing {
publications {
diff --git a/gradle.properties b/gradle.properties
index 3538325..9fa633b 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -14,4 +14,4 @@
# For example: gradle build publish.
publish_repo_releases_url = 'default-value-for-publish_repo_releases_url'
publish_repo_releases_name = 'default-value-for-publish_repo_releases_name'
-java_version = 8
\ No newline at end of file
+java_version = 17
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index fcfb29d..48c0a02 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-rc-1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/pom.xml b/pom.xml
index 96e5f96..5632bc8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,31 +7,33 @@
org.springframework.boot
spring-boot-starter-parent
- 2.7.0
+ 3.5.9
+
com.ibm.cicsdev
cics-java-liberty-springboot-transactions
0.1.0
com.ibm.cicsdev.springboot.transactions
Demo project for Spring and Liberty transactions
+
- 1.8
-
+ 17
UTF-8
${java.version}
- ${java.version}
+ ${java.version}
+ true
-
+
com.ibm.cics
com.ibm.cics.ts.bom
- 5.5-20200519131930-PH25409
+ 6.1-20250812133513-PH63856
pom
import
@@ -66,8 +68,8 @@
- javax.transaction
- javax.transaction-api
+ jakarta.transaction
+ jakarta.transaction-api
provided
diff --git a/src/main/java/com/ibm/cicsdev/springboot/transactions/JEEUserTransaction.java b/src/main/java/com/ibm/cicsdev/springboot/transactions/JEEUserTransaction.java
index b97c595..4d07306 100644
--- a/src/main/java/com/ibm/cicsdev/springboot/transactions/JEEUserTransaction.java
+++ b/src/main/java/com/ibm/cicsdev/springboot/transactions/JEEUserTransaction.java
@@ -12,7 +12,8 @@
import javax.naming.InitialContext;
import javax.naming.NamingException;
-import javax.transaction.UserTransaction;
+
+import jakarta.transaction.UserTransaction;
import org.springframework.stereotype.Component;
import com.ibm.cics.server.TSQ;
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
index 31f268b..7514475 100644
--- a/src/main/webapp/WEB-INF/web.xml
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -1,7 +1,8 @@
-
+
cics-java-liberty-springboot-transactions
BASIC