Claus Ibsen created CAMEL-26664:
-----------------------------------
Summary: camel-dapr - the configuration operation validates the
CamelDaprConfigKeys header but ignores it
Key: CAMEL-26664
URL: https://issues.apache.org/jira/browse/CAMEL-26664
Project: Camel
Issue Type: Bug
Components: camel-dapr
Reporter: Claus Ibsen
Fix For: 4.24.0
The {{configuration}} operation of the {{dapr}} producer checks one source of
config keys and uses another.
* {{DaprConfigurationHandler.validateConfiguration}}
({{components/camel-dapr/src/main/java/org/apache/camel/component/dapr/operations/DaprConfigurationHandler.java:58}})
calls {{getConfigKeys(exchange)}}, which takes the {{CamelDaprConfigKeys}}
header first and the {{configKeys}} option of the endpoint second.
* {{DaprConfigurationHandler.handle}} (same file, line 43) calls
{{getConfigKeysAsList(exchange)}}, which ignores the exchange and returns only
the {{configKeys}} option of the endpoint
({{DaprConfigurationOptionsProxy.java:146-147}}).
So an endpoint without {{configKeys}} and a message with the
{{CamelDaprConfigKeys}} header passes validation, and then sends a
configuration request without keys: the header is ignored. With both set, the
header is also ignored.
Expected: the operation uses the same config keys it validates. Either the
header is used (split like the option), or the header is not documented as an
override and validation uses the endpoint option only.
Found while working on CAMEL-26551.
_Claude Code on behalf of Claus Ibsen (davsclaus)_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)