Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Bug
-
3.2.0
-
None
-
Unknown
Description
The ssl parameters in kafka can be set using a camel SSLContextParameter object (see CAMEL-10705). But it doesn't work as expected.
Camel allows many ways to specify a keystore location, ie a file path, a class path or an URL of the resource. Camel tries all possible ways to read the keystore. (Eg SSLContextParameters.getTrustManagers().getKeyStore().getResource()).
For kafka this resolution doesn't take place. Kafka receives just the raw resource string (org.apache.camel.component.kafka.KafkaConfiguration:511):
addPropertyIfNotNull(props, SslConfigs.SSL_TRUSTSTORE_LOCATION_CONFIG, keyStore.getResource());
Kafka has a different expectation on this location from camel. In particular setting the camel keystore resource to a classpath location doesn't work for kafka (see also KAFKA-7685 for an attempt to support classpath resources).