You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Christoph Deppisch (Jira)" <ji...@apache.org> on 2024/07/30 19:35:00 UTC
[jira] [Created] (CAMEL-21035) Knative ceOverride property binding support misses first value being set
Christoph Deppisch created CAMEL-21035:
------------------------------------------
Summary: Knative ceOverride property binding support misses first value being set
Key: CAMEL-21035
URL: https://issues.apache.org/jira/browse/CAMEL-21035
Project: Camel
Issue Type: Bug
Components: camel-knative
Affects Versions: 4.x
Reporter: Christoph Deppisch
Fix For: 4.8.0
The property binding support for the ceOverride option on the Knative component always misses the first value that is being set via component/endpoint configurer.
The ceOverride option is a map typed setting and users are able to set these values with OGNL style property keys (e.g. in application.properties).
{noformat}
camel.component.knative.ceOverride[ce-type]=custom-type
camel.component.knative.ceOverride[ce-source]=custom-source{noformat}
The 1st key-value pair initializes the ceOverride map during property binding but the value is missing in the resulting configuration map. The property binding support assumes that the target component uses the same map instance that is being initialized by the property binding support. But the Knative component configuration uses its on map instance in the setter with the given map instance as a parent
{code:java}
this.ceOverride = new HashMap(parentMap)
{code}
This makes the 1st value set via property binding disappear in the component configuration because the map instances are not the same.
The 2nd value set via property binding support uses the right map instance of the component because it has already been initialized.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)