Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .mvn/wrapper/maven-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@

distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.12/apache-maven-3.9.12-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
64 changes: 22 additions & 42 deletions build.gradle → ...-springboot-transactions-app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,18 +1,36 @@
plugins
{
id 'org.springframework.boot' version '3.5.13'
id 'org.springframework.boot' version '3.5.13'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id 'eclipse'
id 'idea'
id 'war'
id 'maven-publish'
id 'idea'
}

group = 'com.ibm.cicsdev.springboot'
archivesBaseName='cics-java-liberty-springboot-transactions'
version = '0.1.0'

// ============================================================================
// Java Configuration
// ============================================================================
java {
sourceCompatibility = JavaVersion.toVersion(java_version)
targetCompatibility = JavaVersion.toVersion(java_version)
}

// ============================================================================
// WAR Configuration
// ============================================================================
war {
archiveFileName = "cics-java-liberty-springboot-transactions-app-${version}.war"
}

// Two versions of the WAR would be built, one for embedding into servers like Liberty (plain)
// and a bootWAR which can run standalone and contains all the Tomcat and Spring Boot stuff
// we don't need bootWAR, so disable it.
bootWar { enabled = false }

// If in Eclipse, add Javadoc to the local project classpath
eclipse
{
Expand All @@ -22,19 +40,11 @@ eclipse
}
}



repositories
{
mavenCentral()
}

java {
toolchain {
languageVersion = JavaLanguageVersion.of(java_version)
}
}


dependencies
{
Expand All @@ -55,33 +65,3 @@ dependencies
// 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 {
// Publication for JCICS
maven(MavenPublication) {
groupId "${group}"
version "${version}"
artifactId "${archivesBaseName}"
artifact bootWar
}
}

// Configure the Maven repository to publish to somewhere which is configurable
// with environment variables from outside gradle.
//
// For example:
// gradle build publish \
// -Ppublish_repo_releases_url="file://my-folder" \
// -Ppublish_repo_releases_name="my-maven-repo"
//
repositories {
maven {
url = "${publish_repo_releases_url}/${publish_repo_releases_name}"
}
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
source.. = src/main/java/
bin.includes = META-INF/,.
output.. = bin/
107 changes: 107 additions & 0 deletions cics-java-liberty-springboot-transactions-app/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<!-- Inherit from parent POM -->
<parent>
<groupId>com.ibm.cicsdev</groupId>
<artifactId>cics-java-liberty-springboot-transactions</artifactId>
<version>0.1.0</version>
<relativePath>../pom.xml</relativePath>
</parent>

<!-- Application module properties -->
<artifactId>cics-java-liberty-springboot-transactions-app</artifactId>
<name>com.ibm.cicsdev.springboot.transactions.app</name>
<description>Demo project for Spring and Liberty transactions</description>

<properties>
<java.version>17</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.source>${java.version}</maven.compiler.source>
<spring-boot.repackage.skip>true</spring-boot.repackage.skip>
</properties>

<!-- CICS TS V6.1 BOM (as of Sept 2024) -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.ibm.cics</groupId>
<artifactId>com.ibm.cics.ts.bom</artifactId>
<version>6.1-20250812133513-PH63856</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

<dependencies>
<!-- Compile against, but don't include JCICS in the final build (version and scope are from BOM) -->
<dependency>
<groupId>com.ibm.cics</groupId>
<artifactId>com.ibm.cics.server</artifactId>
</dependency>

<!-- Spring Boot web support -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!-- Compile against, but don't include TomCat in the runtime build -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

<!-- Spring-transactions -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
</dependency>

<!-- Compile against, but don't include javax.transaction API -->
<dependency>
<groupId>jakarta.transaction</groupId>
<artifactId>jakarta.transaction-api</artifactId>
<scope>provided</scope>
</dependency>

</dependencies>

<!-- Package as an executable war (default jar) -->
<packaging>war</packaging>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>


<!--
Publishes artifacts to here if the deploy goal is used.

The values here can be passed on the maven command line
using the -D flag syntax

for example:
-Dpublish_repo_snapshots_name=my-repo
-->
<distributionManagement>
<snapshotRepository>
<id>${publish_repo_snapshots_name}</id>
<url>${publish_repo_snapshots_url}</url>
</snapshotRepository>
<repository>
<id>${publish_repo_releases_name}</id>
<url>${publish_repo_releases_url}</url>
</repository>
</distributionManagement>

</project>
31 changes: 31 additions & 0 deletions cics-java-liberty-springboot-transactions-cicsbundle/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
// ============================================================================
// Plugins
// ============================================================================
plugins {
id 'com.ibm.cics.bundle' version '1.0.8'
}

// ============================================================================
// Project Information
// ============================================================================
description = 'CICS Transactions Springboot Application - CICS Bundle'
version = '1.0.0'

// ============================================================================
// Dependencies
// ============================================================================
dependencies {
// Application WAR from sibling project
cicsBundlePart project(path: ':cics-java-liberty-springboot-transactions-app', configuration: 'archives')
}

// ============================================================================
// CICS Bundle Configuration
// ============================================================================
cicsBundle {
build {
defaultJVMServer = project.findProperty('cics.jvmserver') ?: cicsJvmServer
}
}

// Made with Bob
56 changes: 56 additions & 0 deletions cics-java-liberty-springboot-transactions-cicsbundle/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<!-- ================================================================ -->
<!-- Parent Project -->
<!-- ================================================================ -->
<parent>
<groupId>com.ibm.cicsdev</groupId>
<artifactId>cics-java-liberty-springboot-transactions</artifactId>
<version>0.1.0</version>
</parent>

<!-- ================================================================ -->
<!-- Project Coordinates -->
<!-- ================================================================ -->
<artifactId>cics-java-liberty-springboot-transactions-cicsbundle</artifactId>
<packaging>cics-bundle</packaging>
<name>CICS Transactions Springboot - CICS Bundle</name>

<!-- ================================================================ -->
<!-- Dependencies -->
<!-- ================================================================ -->
<dependencies>
<!-- Application WAR -->
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>cics-java-liberty-springboot-transactions-app</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
</dependencies>

<!-- ================================================================ -->
<!-- Build Configuration -->
<!-- ================================================================ -->
<build>
<plugins>
<!-- CICS Bundle Maven Plugin -->
<plugin>
<groupId>com.ibm.cics</groupId>
<artifactId>cics-bundle-maven-plugin</artifactId>
<version>1.0.8</version>
<extensions>true</extensions>
<configuration>
<defaultjvmserver>${cics.jvmserver}</defaultjvmserver>
</configuration>
</plugin>
</plugins>
</build>

</project>

<!-- Made with Bob -->
10 changes: 9 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,12 @@
# 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 = 17
java_version = 17

# CICS Configuration
cicsJvmServer=DFHWLP
cicsBomVersion=6.3-20250905155520

# Framework Versions
jakartaVersion=10.0.0
libertyApisVersion=25.0.0.9
Loading
Loading