This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
commit 97810a922732a4124aaba4501e55936a3dfab3eb Author: Claus Ibsen <[email protected]> AuthorDate: Thu Jul 2 14:09:31 2026 +0200 Fix code generator to handle day-based duration defaults The convertDurationToMills method only handled time-based durations (hours/minutes/seconds) by prepending "PT", but days require "P" prefix in ISO-8601. This caused "1d" defaults to pass through unconverted, producing invalid Java literals like "1dL". Co-Authored-By: Claude Opus 4.6 <[email protected]> --- .../camel/springboot/maven/SpringBootAutoConfigurationMojo.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java index d8c4c341505..554c408f7bf 100644 --- a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java +++ b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/SpringBootAutoConfigurationMojo.java @@ -784,7 +784,14 @@ public class SpringBootAutoConfigurationMojo extends AbstractSpringBootGenerator pattern = pattern.replaceAll("ms", ""); } try { - Duration d = Duration.parse("PT" + pattern); + // Days are a date component in ISO-8601 and must appear before the T separator (P1D, not PT1D) + String iso; + if (pattern.endsWith("d")) { + iso = "P" + pattern; + } else { + iso = "PT" + pattern; + } + Duration d = Duration.parse(iso); value = String.valueOf(d.toMillis()); } catch (java.time.format.DateTimeParseException e) { value = pattern;
