You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by anandakrishnan ramakrishnan <an...@gmail.com> on 2021/04/28 13:19:12 UTC

Kafka - Issue with additionalProperties

I am having issue with setting additionalProperties. I am setting the
property as below

    Map<String, String> additionalProperties = new HashMap<>();
            additionalProperties.put("sasl.login.callback.handler.class",

 "io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler");

Followed by the Kafka route builder is setup as below

    .additionalProperties(additionalProperties)

However the property i see populated in the kafka config show up as
"sasl"->"io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler"

The reason being the PropertyBindingSupport.java is splitting by dot

// we should only walk and create OGNL path for the middle graph

    String[] parts;
    if (isDotKey(name)) {
        parts = splitKey(name);
    } else {
        parts = new String[] { name };
    }

// which only picks up "sasl" instead of "sasl.login.callback-handler.class"

    newName = parts[i + 1];

Any help is appreciated.

Re: Kafka - Issue with additionalProperties

Posted by anandakrishnan ramakrishnan <an...@gmail.com>.
Hi Omar

Highly appreciate your response on this matter.  You are on point, i was
using 3.7.0 anddiscovered this later and posted the same on stack trace.

https://stackoverflow.com/questions/67307832/camel-kafka-additionalproperties-issue/67307854#67307854

Much appreciate it.

Thanks & Regards

Anand

On Wed, Apr 28, 2021 at 11:39 AM Omar Al-Safi <om...@oalsafi.com> wrote:

> Hi,
>
> I guess you are using the Endpoint DSL? Which Camel version do you use
> here?
>
> In case you are running Camel 3.7.0, I recall the additionalProperties was
> broken in the kafka component and it was fixed in 3.7.1 and 3.8.0.
>
> Regards,
> Omar
>
> On Wed, Apr 28, 2021 at 3:19 PM anandakrishnan ramakrishnan <
> anand140778@gmail.com> wrote:
>
> > I am having issue with setting additionalProperties. I am setting the
> > property as below
> >
> >     Map<String, String> additionalProperties = new HashMap<>();
> >             additionalProperties.put("sasl.login.callback.handler.class",
> >
> >
> >
> "io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler");
> >
> > Followed by the Kafka route builder is setup as below
> >
> >     .additionalProperties(additionalProperties)
> >
> > However the property i see populated in the kafka config show up as
> >
> >
> "sasl"->"io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler"
> >
> > The reason being the PropertyBindingSupport.java is splitting by dot
> >
> > // we should only walk and create OGNL path for the middle graph
> >
> >     String[] parts;
> >     if (isDotKey(name)) {
> >         parts = splitKey(name);
> >     } else {
> >         parts = new String[] { name };
> >     }
> >
> > // which only picks up "sasl" instead of
> > "sasl.login.callback-handler.class"
> >
> >     newName = parts[i + 1];
> >
> > Any help is appreciated.
> >
>

Re: Kafka - Issue with additionalProperties

Posted by Omar Al-Safi <om...@oalsafi.com>.
Hi,

I guess you are using the Endpoint DSL? Which Camel version do you use
here?

In case you are running Camel 3.7.0, I recall the additionalProperties was
broken in the kafka component and it was fixed in 3.7.1 and 3.8.0.

Regards,
Omar

On Wed, Apr 28, 2021 at 3:19 PM anandakrishnan ramakrishnan <
anand140778@gmail.com> wrote:

> I am having issue with setting additionalProperties. I am setting the
> property as below
>
>     Map<String, String> additionalProperties = new HashMap<>();
>             additionalProperties.put("sasl.login.callback.handler.class",
>
>
>  "io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler");
>
> Followed by the Kafka route builder is setup as below
>
>     .additionalProperties(additionalProperties)
>
> However the property i see populated in the kafka config show up as
>
> "sasl"->"io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler"
>
> The reason being the PropertyBindingSupport.java is splitting by dot
>
> // we should only walk and create OGNL path for the middle graph
>
>     String[] parts;
>     if (isDotKey(name)) {
>         parts = splitKey(name);
>     } else {
>         parts = new String[] { name };
>     }
>
> // which only picks up "sasl" instead of
> "sasl.login.callback-handler.class"
>
>     newName = parts[i + 1];
>
> Any help is appreciated.
>