Skip to content

Modernize to java 25 and Spring 4 #10

Open
philippe-joseph wants to merge 7 commits into
springboot-test-reffrom
modernize/java-20260527195304
Open

Modernize to java 25 and Spring 4 #10
philippe-joseph wants to merge 7 commits into
springboot-test-reffrom
modernize/java-20260527195304

Conversation

@philippe-joseph

Copy link
Copy Markdown
Collaborator

Major update of used versions for this demo project.

Area Before After Improvement
JDK Java 21 Java 25 Latest Java release; new language features (e.g., Amber, Loom maturity)
Spring Boot 3.5.6 4.0.6 Latest major version; Jakarta EE 10, Spring Framework 7.0
Spring Framework 6.2.x 7.0.7 HTTP interface improvements, revised MVC defaults
JUnit 5.10.1 (BOM) 6.1.0 (BOM) JUnit Jupiter 6 with improved extension model
Cucumber 7.14.0 (BOM) 7.34.3 (BOM) Latest Cucumber with JUnit 6 support
Allure 2.24.0–2.27.0 2.35.1 JUnit 6 + Cucumber 7.34 compatibility
springdoc-openapi 2.7.0 3.0.3 Spring Boot 4.0 compatible
WireMock (Spring Boot) 3.9.0 4.2.1 Spring Boot 4.0 compatible
httpclient5 (transitive) 5.5.2 Managed by Spring Boot 4.0 BOM
Dockerfile base image fedora:38 + JDK 17 eclipse-temurin:25-jdk-noble Matches Java 25 runtime

Philippe Joseph added 7 commits May 27, 2026 19:12
- Spring Boot BOM: 3.5.6 → 4.0.6 (BankingAppServer)
- JUnit BOM: 5.10.1 → 6.1.0 (both modules)
- Cucumber BOM: 7.14.0 → 7.34.3 (both modules)
- springdoc-openapi: 2.7.0 → 3.0.3
- wiremock-spring-boot: 3.9.0 → 4.2.1
- allure: 2.24/2.27 → 2.35.1 (both modules)
- Add spring-boot-starter-classic, spring-boot-starter-test-classic
- Add spring-boot-resttestclient (test)
- TestRestTemplate: package migrated + @AutoConfigureTestRestTemplate added (8 test classes)
- AutoConfigureMockMvc: new package org.springframework.boot.webmvc.test.autoconfigure
- WebServerInitializedEvent: new package org.springframework.boot.web.server.context
- ResponseEntity constructor: fix ambiguity in ErrorHandler.java
- Dockerfile: fedora:38+java-17 → eclipse-temurin:25-jdk-noble
- Note: configureMessageConverters(List) deprecated but still compiles
- root pom.xml: maven.compiler.source/target 21 → 25
- Verified: javac compiles all modules with target 25 using JDK 25.0.2
Session ID: 20260527161921
- plan.md: Upgrade plan for Java 25 + Spring Boot 4.0.6
- progress.md: Step-by-step execution log (all 5 steps ✅)
- summary.md: Final upgrade result with CVE scan (0 CVEs) and coverage (67-68%)
- Fixed test logic error in Aufgabe_2_1_GiroAccountTests where balance assertion was incorrect (should remain unchanged after failed send)
- Added @DirtiesContext annotations to tests that mutate database state (deleteAPI and addAccount tests) to ensure proper test isolation
- All 17 tests now pass with 100% success rate
@philippe-joseph philippe-joseph requested review from Curve and axheim June 5, 2026 07:49
Comment thread .github/workflows/cd.yml

- name: 📦 Deploy
uses: appleboy/ssh-action@55dabf81b49d4120609345970c91507e2d734799
uses: appleboy/ssh-action@v1.2.5

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Auf commit pinnen. Version ist insecure.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment thread Dockerfile
@@ -1,8 +1,8 @@
FROM fedora:38
FROM eclipse-temurin:25-jdk-noble

@Curve Curve Jun 5, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Könnten hier direkt die temurin alpine version usen

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants