CAMEL-24501: Only copy configured starter options onto the Camel target

The generated configuration classes materialise every catalog default as a
field initializer, so the starter customizer copied those defaults onto any
component, data format or language it was applied to, including a bean the
application registered and configured in Java. A value set in code that
differed from the catalog default was silently reverted at startup.

CamelPropertiesHelper now copies only the options Spring Boot recorded as
bound in BoundConfigurationProperties, including the entries of a map or
list option. The field initializers stay, so spring-configuration-metadata
and the generated documentation keep showing the defaults, and nothing
generated changes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
7 files changed
tree: e8b70180689bb851bfbc811bdaea1657d42a35e1
  1. .github/
  2. .mvn/
  3. .oss-ai-helper-rules/
  4. archetypes/
  5. camel-spring-boot-sbom/
  6. catalog/
  7. components-starter/
  8. core/
  9. core-starter/
  10. docs/
  11. dsl-starter/
  12. parent/
  13. tests/
  14. tooling/
  15. .asf.yaml
  16. .gitattributes
  17. .gitignore
  18. AGENTS.md
  19. CLAUDE.md
  20. Jenkinsfile.sb
  21. Jenkinsfile.sb.deploy
  22. Jenkinsfile.sb.ppc64le
  23. KEYS
  24. LICENSE.txt
  25. mvnw
  26. mvnw.cmd
  27. NOTICE.txt
  28. pom.xml
  29. README.md
  30. SECURITY.md
  31. starter-create
  32. starter-create.cmd
  33. starter-delete
  34. starter-delete.cmd
README.md

Apache Camel Spring Boot Support

Maven Central Javadocs Stack Overflow Chat Twitter

Apache Camel is a powerful open source integration framework based on known Enterprise Integration Patterns with powerful bean integration.

Introduction

This project provides Spring Boot support for Apache Camel.

Creating / deleting starters

To create a starter for the zoot component, run the following command:

./starter-create zoot

Similarly, to delete the starter for the zoot component, run the following command:

./starter-delete zoot

More information can be found on the Camel website