From f6f55d6fdb822a7c26d6ddef5a60d64267fcbcb7 Mon Sep 17 00:00:00 2001 From: Steve Elliott Date: Tue, 16 Jun 2026 15:21:53 -0400 Subject: [PATCH] =?UTF-8?q?Add=20ChangePackage=20for=20actuate.endpoint.we?= =?UTF-8?q?b.servlet=20=E2=86=92=20webmvc.actuate.endpoint.web?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Spring Boot 4.0 moved `AbstractWebMvcEndpointHandlerMapping`, `AdditionalHealthEndpointPathsWebMvcHandlerMapping`, `ControllerEndpointHandlerMapping`, and `WebMvcEndpointHandlerMapping` from `org.springframework.boot.actuate.endpoint.web.servlet` to `org.springframework.boot.webmvc.actuate.endpoint.web` as part of the modularization into the `spring-boot-webmvc` module. This package relocation was not previously covered by the modular starters recipe. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../spring-boot-40-modular-starters.yml | 5 +++ .../boot4/MigrateToModularStartersTest.java | 36 +++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/src/main/resources/META-INF/rewrite/spring-boot-40-modular-starters.yml b/src/main/resources/META-INF/rewrite/spring-boot-40-modular-starters.yml index 773ff1002..d607cb3ec 100644 --- a/src/main/resources/META-INF/rewrite/spring-boot-40-modular-starters.yml +++ b/src/main/resources/META-INF/rewrite/spring-boot-40-modular-starters.yml @@ -389,6 +389,11 @@ recipeList: # module: spring-boot-security newPackageName: org.springframework.boot.security.autoconfigure.actuate.web.servlet recursive: true + # spring-boot-actuator → spring-boot-webmvc + - org.openrewrite.java.ChangePackage: + oldPackageName: org.springframework.boot.actuate.endpoint.web.servlet + newPackageName: org.springframework.boot.webmvc.actuate.endpoint.web + recursive: true # spring-boot-actuator → spring-boot-health # Types that move to health.actuate.endpoint (must be listed before the catch-all ChangePackage) - org.openrewrite.java.ChangeType: diff --git a/src/test/java/org/openrewrite/java/spring/boot4/MigrateToModularStartersTest.java b/src/test/java/org/openrewrite/java/spring/boot4/MigrateToModularStartersTest.java index 1f169c542..3c8d9eda6 100644 --- a/src/test/java/org/openrewrite/java/spring/boot4/MigrateToModularStartersTest.java +++ b/src/test/java/org/openrewrite/java/spring/boot4/MigrateToModularStartersTest.java @@ -549,6 +549,42 @@ public Health health() { } + @Nested + class MigrateActuateEndpointWebServletPackage implements RewriteTest { + @Override + public void defaults(RecipeSpec spec) { + spec.recipeFromResource( + "/META-INF/rewrite/spring-boot-40-modular-starters.yml", + "org.openrewrite.java.spring.boot4.MigrateToModularStarters" + ).parser(JavaParser.fromJavaVersion() + .classpathFromResources(new InMemoryExecutionContext(), + "spring-boot-actuator-3")); + } + + @Test + void migrateWebMvcEndpointHandlerMapping() { + rewriteRun( + //language=java + java( + """ + import org.springframework.boot.actuate.endpoint.web.servlet.WebMvcEndpointHandlerMapping; + + class MyConfig { + WebMvcEndpointHandlerMapping handlerMapping; + } + """, + """ + import org.springframework.boot.webmvc.actuate.endpoint.web.WebMvcEndpointHandlerMapping; + + class MyConfig { + WebMvcEndpointHandlerMapping handlerMapping; + } + """ + ) + ); + } + } + @Nested class MigrateAutoconfigurePackages { @Test