From 1e0e9a26219a43c8f6540d2ef88aa801a4db1cb6 Mon Sep 17 00:00:00 2001 From: Josiah Noel <32279667+SentryMan@users.noreply.github.com> Date: Wed, 10 Dec 2025 14:19:50 -0500 Subject: [PATCH 1/2] Conditionally add BeanTypes annotation in ControllerWriter --- .../avaje/http/generator/helidon/nima/ControllerWriter.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/http-generator-helidon/src/main/java/io/avaje/http/generator/helidon/nima/ControllerWriter.java b/http-generator-helidon/src/main/java/io/avaje/http/generator/helidon/nima/ControllerWriter.java index 09b161e8..da8369c1 100644 --- a/http-generator-helidon/src/main/java/io/avaje/http/generator/helidon/nima/ControllerWriter.java +++ b/http-generator-helidon/src/main/java/io/avaje/http/generator/helidon/nima/ControllerWriter.java @@ -118,7 +118,9 @@ private void writeRoutes(List methods) { private void writeClassStart() { writer.append(AT_GENERATED).eol(); writer.append(diAnnotation()).eol(); - writer.append("@io.avaje.inject.BeanTypes({%s$Route.class, HttpFeature.class})", shortName).eol(); + if (diAnnotation().equals("@Component")) { + writer.append("@io.avaje.inject.BeanTypes({%s$Route.class, HttpFeature.class})", shortName).eol(); + } writer.append("public final class %s$Route implements HttpFeature {", shortName).eol().eol(); var controllerName = "controller"; From a27e74afc664f37f44eb6da6a70b351c92281168 Mon Sep 17 00:00:00 2001 From: Josiah Noel <32279667+SentryMan@users.noreply.github.com> Date: Wed, 10 Dec 2025 14:21:54 -0500 Subject: [PATCH 2/2] Update ControllerWriter.java --- .../java/io/avaje/http/generator/jex/ControllerWriter.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/http-generator-jex/src/main/java/io/avaje/http/generator/jex/ControllerWriter.java b/http-generator-jex/src/main/java/io/avaje/http/generator/jex/ControllerWriter.java index 5e9faec0..71ec1a14 100644 --- a/http-generator-jex/src/main/java/io/avaje/http/generator/jex/ControllerWriter.java +++ b/http-generator-jex/src/main/java/io/avaje/http/generator/jex/ControllerWriter.java @@ -81,8 +81,10 @@ private void writeRouting(MethodReader method) { private void writeClassStart() { writer.append(AT_GENERATED).eol(); - writer.append(diAnnotation()).eol(); - writer.append("@io.avaje.inject.BeanTypes({%s$Route.class, Routing.HttpService.class})", shortName).eol(); + writer.append(diAnnotation()).eol(); + if (diAnnotation().equals("@Component")) { + writer.append("@io.avaje.inject.BeanTypes({%s$Route.class, Routing.HttpService.class})", shortName).eol(); + } writer.append("public final class %s$Route implements Routing.HttpService {", shortName).eol().eol(); String controllerName = "controller";