Skip to content

Commit b91710f

Browse files
authored
restructuring of code
2 parents 46cb96a + f2798cc commit b91710f

27 files changed

Lines changed: 272 additions & 103 deletions

File tree

.classpath

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<attribute name="gradle_used_by_scope" value="main,test"/>
1414
</attributes>
1515
</classpathentry>
16-
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
16+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17/"/>
1717
<classpathentry kind="src" path=".apt_generated">
1818
<attributes>
1919
<attribute name="optional" value="true"/>

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# cics-java-liberty-springboot-link
2-
[![Build](https://github.com/cicsdev/cics-java-liberty-springboot-link/actions/workflows/java.yaml/badge.svg)](https://github.com/cicsdev/cics-java-liberty-springboot-link/actions/workflows/java.yaml)
2+
[![Build](https://github.com/cicsdev/cics-java-liberty-springboot-link/actions/workflows/build.yaml/badge.svg)](https://github.com/cicsdev/cics-java-liberty-springboot-link/actions/workflows/build.yaml)
33

44
This sample demonstrates how you can link to a Spring Boot application in a Liberty JVM server from a CICS program. The application is based on a Spring Boot sample application that demonstrates Spring MVC, so has both a web front-end and a CICS entry point using the link to Liberty `@CICSProgram` annotation. The sample shows how both entry points can access the same data.
55

build.gradle renamed to cics-java-liberty-springboot-link-app/build.gradle

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,30 @@ plugins
99
}
1010

1111
group = 'com.ibm.cicsdev.springboot'
12-
archivesBaseName='cics-java-liberty-springboot-link'
13-
version = '0.1.0'
12+
version = '1.0.0'
1413

1514
// ============================================================================
1615
// Java Configuration
1716
// ============================================================================
1817
java {
19-
sourceCompatibility = JavaVersion.toVersion(java_version)
20-
targetCompatibility = JavaVersion.toVersion(java_version)
18+
toolchain {
19+
languageVersion = JavaLanguageVersion.of(java_version)
20+
}
2121
}
2222

23+
// ============================================================================
24+
// WAR Configuration
25+
// ============================================================================
26+
war
27+
{
28+
archiveFileName = "cics-java-liberty-springboot-link-app-${version}.war"
29+
}
30+
31+
// Two versions of the WAR would be built, one for embedding into servers like Liberty (plain)
32+
// and a bootWAR which can run standalone and contains all the Tomcat and Spring Boot stuff
33+
// we don't need bootWAR, so disable it.
34+
bootWar { enabled = false }
35+
2336
// If in Eclipse, add Javadoc to the local project classpath
2437
eclipse
2538
{
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4+
<modelVersion>4.0.0</modelVersion>
5+
6+
<!-- Inherit from parent POM -->
7+
<parent>
8+
<groupId>com.ibm.cicsdev</groupId>
9+
<artifactId>cics-java-liberty-springboot-link</artifactId>
10+
<version>1.0.0</version>
11+
<relativePath>../pom.xml</relativePath>
12+
</parent>
13+
14+
<!-- Application module properties -->
15+
<artifactId>cics-java-liberty-springboot-link-app</artifactId>
16+
<name>com.ibm.cicsdev.springboot.link.app</name>
17+
<description>Demo project for Spring Boot with CICS Link - Application</description>
18+
19+
<properties>
20+
<java.version>17</java.version>
21+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
22+
<maven.compiler.release>${java.version}</maven.compiler.release>
23+
<spring-boot.repackage.skip>true</spring-boot.repackage.skip>
24+
</properties>
25+
26+
<!-- CICS TS V6.1 BOM (as of Sept 2024) -->
27+
<dependencyManagement>
28+
<dependencies>
29+
<dependency>
30+
<groupId>com.ibm.cics</groupId>
31+
<artifactId>com.ibm.cics.ts.bom</artifactId>
32+
<version>6.1-20250812133513-PH63856</version>
33+
<type>pom</type>
34+
<scope>import</scope>
35+
</dependency>
36+
</dependencies>
37+
</dependencyManagement>
38+
39+
<dependencies>
40+
<!-- Compile against, but don't include JCICS in the final build (version and scope are from BOM) -->
41+
<dependency>
42+
<groupId>com.ibm.cics</groupId>
43+
<artifactId>com.ibm.cics.server</artifactId>
44+
</dependency>
45+
46+
<!-- CICS Annotations -->
47+
<dependency>
48+
<groupId>com.ibm.cics</groupId>
49+
<artifactId>com.ibm.cics.server.invocation.annotations</artifactId>
50+
</dependency>
51+
52+
<!-- Spring web support -->
53+
<dependency>
54+
<groupId>org.springframework.boot</groupId>
55+
<artifactId>spring-boot-starter-web</artifactId>
56+
</dependency>
57+
58+
<!-- Validation annotation support for validating Web input forms -->
59+
<dependency>
60+
<groupId>jakarta.validation</groupId>
61+
<artifactId>jakarta.validation-api</artifactId>
62+
</dependency>
63+
64+
<!-- Thymeleaf view -->
65+
<dependency>
66+
<groupId>org.springframework.boot</groupId>
67+
<artifactId>spring-boot-starter-thymeleaf</artifactId>
68+
</dependency>
69+
70+
<!-- Don't include TomCat in the runtime build, but put it in lib-provided so it can run standalone as well as embedded -->
71+
<dependency>
72+
<groupId>org.springframework.boot</groupId>
73+
<artifactId>spring-boot-starter-tomcat</artifactId>
74+
<scope>provided</scope>
75+
</dependency>
76+
77+
<!-- Add tiles-el dependency if using JSF, see README for more details -->
78+
<dependency>
79+
<groupId>org.apache.tiles</groupId>
80+
<artifactId>tiles-el</artifactId>
81+
<version>3.0.8</version>
82+
</dependency>
83+
84+
</dependencies>
85+
86+
<!-- Package as an executable war (default jar) -->
87+
<packaging>war</packaging>
88+
89+
<!-- Build with Maven and CICS annotation processor -->
90+
<build>
91+
<plugins>
92+
<!-- Spring Boot plugin for Maven -->
93+
<plugin>
94+
<groupId>org.springframework.boot</groupId>
95+
<artifactId>spring-boot-maven-plugin</artifactId>
96+
</plugin>
97+
98+
<!-- Enable the Link to Liberty annotation processor -->
99+
<plugin>
100+
<artifactId>maven-compiler-plugin</artifactId>
101+
<version>3.12.1</version>
102+
<configuration>
103+
<annotationProcessorPaths>
104+
<annotationProcessorPath>
105+
<groupId>com.ibm.cics</groupId>
106+
<artifactId>com.ibm.cics.server.invocation</artifactId>
107+
</annotationProcessorPath>
108+
</annotationProcessorPaths>
109+
</configuration>
110+
</plugin>
111+
</plugins>
112+
</build>
113+
114+
</project>

src/main/java/com/ibm/cicsdev/springboot/link/app/ui/Application.java renamed to cics-java-liberty-springboot-link-app/src/main/java/com/ibm/cicsdev/springboot/link/app/ui/Application.java

File renamed without changes.

src/main/java/com/ibm/cicsdev/springboot/link/app/ui/InMemoryMessageRepository.java renamed to cics-java-liberty-springboot-link-app/src/main/java/com/ibm/cicsdev/springboot/link/app/ui/InMemoryMessageRepository.java

File renamed without changes.

src/main/java/com/ibm/cicsdev/springboot/link/app/ui/Message.java renamed to cics-java-liberty-springboot-link-app/src/main/java/com/ibm/cicsdev/springboot/link/app/ui/Message.java

File renamed without changes.

src/main/java/com/ibm/cicsdev/springboot/link/app/ui/MessageRepository.java renamed to cics-java-liberty-springboot-link-app/src/main/java/com/ibm/cicsdev/springboot/link/app/ui/MessageRepository.java

File renamed without changes.

src/main/java/com/ibm/cicsdev/springboot/link/app/ui/ServletInitializer.java renamed to cics-java-liberty-springboot-link-app/src/main/java/com/ibm/cicsdev/springboot/link/app/ui/ServletInitializer.java

File renamed without changes.

0 commit comments

Comments
 (0)