From cd5d8db7ff87c97feafc1cec562b2bf7a23e28ec Mon Sep 17 00:00:00 2001 From: Ivan Hargreaves Date: Mon, 7 Sep 2026 16:22:35 +0100 Subject: [PATCH 1/2] Deep scan fixes: SB 3.5.16, build badge branch, bundleID, bracket style, pages-3.1, cicsbundle-eclipse .project, remove etc/cics_bundle_project --- README.md | 36 +++++++++---------- .../build.gradle | 8 ++--- .../.project | 16 +++++++++ .../build.gradle | 14 +++++--- .../META-INF/cics.xml | 7 ---- ...ics-java-liberty-springboot-jdbc.warbundle | 2 -- pom.xml | 2 +- 7 files changed, 46 insertions(+), 39 deletions(-) delete mode 100644 etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/META-INF/cics.xml delete mode 100644 etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/cics-java-liberty-springboot-jdbc.warbundle diff --git a/README.md b/README.md index 662024e..9b22a6d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # cics-java-liberty-springboot-jdbc -[![Build](https://github.com/cicsdev/cics-java-liberty-springboot-jdbc/actions/workflows/build.yaml/badge.svg)](https://github.com/cicsdev/cics-java-liberty-springboot-jdbc/actions/workflows/build.yaml) +[![Build](https://github.com/cicsdev/cics-java-liberty-springboot-jdbc/actions/workflows/build.yaml/badge.svg?branch=main)](https://github.com/cicsdev/cics-java-liberty-springboot-jdbc/actions/workflows/build.yaml) [![License](https://img.shields.io/badge/License-EPL%202.0-green.svg)](https://opensource.org/licenses/EPL-2.0) ## Overview @@ -9,8 +9,7 @@ This sample demonstrates how to integrate **Spring Boot** with **IBM CICS** usin The sample is intended both as a runnable example and as an educational reference for developers building enterprise-grade Spring Boot applications with JDBC on CICS Liberty. -## Key Features - +**Key Features:** - **CICS API Integration:** Direct use of CICS Java APIs for database operations - **RESTful Services:** Spring Boot REST endpoints for employee data management - **Multi-Module Project:** Separate application and CICS bundle modules @@ -24,23 +23,22 @@ The sample is intended both as a runnable example and as an educational referenc ## Table of Contents 1. [Overview](#overview) -2. [Key Features](#key-features) -3. [Prerequisites](#prerequisites) -4. [Downloading](#downloading) -5. [Design and Architecture](#design-and-architecture) -6. [Transaction Management](#transaction-management) -7. [Before You Start: Files to Modify](#before-you-start-files-to-modify) -8. [Building the Sample](#building-the-sample) -9. [Deploying to a CICS Liberty JVM server](#deploying-to-a-cics-liberty-jvm-server) +2. [Prerequisites](#prerequisites) +3. [Downloading](#downloading) +4. [Design and Architecture](#design-and-architecture) +5. [Transaction Management](#transaction-management) +6. [Before You Start: Files to Modify](#before-you-start-files-to-modify) +7. [Building the Sample](#building-the-sample) +8. [Deploying to a CICS Liberty JVM server](#deploying-to-a-cics-liberty-jvm-server) - [CICS Bundle Plugin Deployment (Gradle/Maven)](#cics-bundle-plugin-deployment-gradlemaven) - [CICS Explorer SDK Deployment](#cics-explorer-sdk-deployment) - [Direct Liberty Application Deployment](#direct-liberty-application-deployment) - [Common Bundle Installation Steps](#common-bundle-installation-steps) -10. [Running the Sample](#running-the-sample) -11. [Troubleshooting](#troubleshooting) -12. [License](#license) -13. [Additional Resources](#additional-resources) -14. [Contributing](#contributing) +9. [Running the Sample](#running-the-sample) +10. [Troubleshooting](#troubleshooting) +11. [License](#license) +12. [Additional Resources](#additional-resources) +13. [Contributing](#contributing) --- @@ -248,15 +246,13 @@ Before deploying, ensure your CICS region has: ```xml servlet-6.0 - pages-3.1 jdbc-4.3 - cicsts:security-1.0 ``` **Notes:** - `servlet-6.0` (Jakarta EE 10) requires CICS TS V6.1 or later for Spring Boot 3.x -- `cicsts:security-1.0` is automatically added if SEC=YES in SIT +- `cicsts:core-1.0` is auto-injected by CICS in integrated mode — do not add it manually - For `jdbc-4.3`, add `type="javax.sql.DataSource"` to datasource definition --- @@ -643,7 +639,7 @@ HTTP 401 Unauthorized 1. **CICS security not configured:** - Verify SEC=YES in CICS SIT - - Check that `cicsts:security-1.0` feature is in server.xml + - `cicsts:security-1.0` is auto-injected by CICS when SEC=YES — do not add it manually - Ensure user is defined in RACF/security manager 2. **Liberty security configuration:** diff --git a/cics-java-liberty-springboot-jdbc-app/build.gradle b/cics-java-liberty-springboot-jdbc-app/build.gradle index 3aa8791..fdcbe8e 100755 --- a/cics-java-liberty-springboot-jdbc-app/build.gradle +++ b/cics-java-liberty-springboot-jdbc-app/build.gradle @@ -1,6 +1,6 @@ plugins { - id 'org.springframework.boot' version '3.5.8' + id 'org.springframework.boot' version '3.5.16' id 'io.spring.dependency-management' version '1.1.7' id 'java' id 'eclipse' @@ -57,7 +57,7 @@ eclipse repositories { - mavenCentral() + mavenCentral() } dependencies @@ -65,10 +65,10 @@ dependencies // CICS TS Maven BOM (version from gradle.properties) compileOnly enforcedPlatform("com.ibm.cics:com.ibm.cics.ts.bom:${project.property('cics.bom.version')}") - // Spring Boot web starter dependency + // Spring Boot web starter dependency implementation("org.springframework.boot:spring-boot-starter-web") - // Don't include TomCat in the runtime build, but do put it in WEB-INF so it can be run standalone a well as embedded + // Don't include TomCat in the runtime build, but do put it in WEB-INF so it can be run standalone as well as embedded providedRuntime("org.springframework.boot:spring-boot-starter-tomcat") // Spring JDBC Support diff --git a/cics-java-liberty-springboot-jdbc-cicsbundle-eclipse/.project b/cics-java-liberty-springboot-jdbc-cicsbundle-eclipse/.project index 44830e0..c1d0350 100644 --- a/cics-java-liberty-springboot-jdbc-cicsbundle-eclipse/.project +++ b/cics-java-liberty-springboot-jdbc-cicsbundle-eclipse/.project @@ -8,6 +8,22 @@ com.ibm.cics.bundle.ui.bundlebuilder + + bundleID + cics-java-liberty-springboot-jdbc-bundle + + + majorVersion + + + + microVersion + + + + minorVersion + + diff --git a/cics-java-liberty-springboot-jdbc-cicsbundle/build.gradle b/cics-java-liberty-springboot-jdbc-cicsbundle/build.gradle index 3dcb55f..15be0d3 100644 --- a/cics-java-liberty-springboot-jdbc-cicsbundle/build.gradle +++ b/cics-java-liberty-springboot-jdbc-cicsbundle/build.gradle @@ -1,7 +1,8 @@ // ============================================================================ // Plugins // ============================================================================ -plugins { +plugins +{ id 'com.ibm.cics.bundle' version '1.0.8' } @@ -14,13 +15,16 @@ version = '1.0.0' // ============================================================================ // Dependencies // ============================================================================ -dependencies { +dependencies +{ // Application WAR from sibling project cicsBundlePart project(path: ':cics-java-liberty-springboot-jdbc-app', configuration: 'archives') } -cicsBundle { - build { +cicsBundle +{ + build + { defaultJVMServer = project.findProperty("cics.jvmserver") ?: "DFHWLP" } -} \ No newline at end of file +} diff --git a/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/META-INF/cics.xml b/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/META-INF/cics.xml deleted file mode 100644 index b2966ce..0000000 --- a/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/META-INF/cics.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - 2026-05-05T16:01:06.431684Z - - - diff --git a/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/cics-java-liberty-springboot-jdbc.warbundle b/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/cics-java-liberty-springboot-jdbc.warbundle deleted file mode 100644 index d180141..0000000 --- a/etc/config/cics_bundle_project/cics-java-liberty-springboot-jdbc-cicsbundle-1.0.0/cics-java-liberty-springboot-jdbc.warbundle +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/pom.xml b/pom.xml index 6ea6c6b..0ba546a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.boot spring-boot-starter-parent - 3.5.8 + 3.5.16 From d6fc42ebe3e4a7c2cd617cc77137e16397d520bf Mon Sep 17 00:00:00 2001 From: Ivan Hargreaves Date: Mon, 7 Sep 2026 16:34:06 +0100 Subject: [PATCH 2/2] README: soften CICS auto-injected features wording --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9b22a6d..2d86996 100644 --- a/README.md +++ b/README.md @@ -252,7 +252,7 @@ Before deploying, ensure your CICS region has: **Notes:** - `servlet-6.0` (Jakarta EE 10) requires CICS TS V6.1 or later for Spring Boot 3.x -- `cicsts:core-1.0` is auto-injected by CICS in integrated mode — do not add it manually +- `cicsts:core-1.0` is auto-injected by CICS in integrated mode; you do not need to add it manually - For `jdbc-4.3`, add `type="javax.sql.DataSource"` to datasource definition --- @@ -639,7 +639,7 @@ HTTP 401 Unauthorized 1. **CICS security not configured:** - Verify SEC=YES in CICS SIT - - `cicsts:security-1.0` is auto-injected by CICS when SEC=YES — do not add it manually + - `cicsts:security-1.0` is auto-injected by CICS when SEC=YES; you do not need to add it manually - Ensure user is defined in RACF/security manager 2. **Liberty security configuration:**