Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-21035

Knative ceOverride property binding support misses first value being set

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.x
    • 4.8.0
    • camel-knative
    • None
    • Unknown

    Description

      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).

      camel.component.knative.ceOverride[ce-type]=custom-type
      camel.component.knative.ceOverride[ce-source]=custom-source

      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

      this.ceOverride = new HashMap(parentMap)
      

      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.

      Attachments

        Issue Links

          Activity

            People

              christophd Christoph Deppisch
              christophd Christoph Deppisch
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: