【问题标题】:@Value annotation of Springboot can't find JKS file location for Kafka Producer AuthenticationSpringboot的@Value注解找不到Kafka Producer Authentication的JKS文件位置
【发布时间】:2020-05-14 04:23:01
【问题描述】:

我正在使用具有 SSL 身份验证和设置 kafka.ssl.keystore.location = C:\\Users\\Documnets\\filelocation.jks 的 Kafka Producer。在我的生产者之前需要启动另一个 bean,它使用生产者 所以,我在初始化 bean 中自动连接这个 Producer 及其配置。

不知何故,@Value(${kafka.ssl.keystore.location}) 无法解决。我收到占位符无法解析错误。

【问题讨论】:

    标签: java spring spring-boot spring-kafka


    【解决方案1】:

    它是spring.kafka.ssl.key-store-location。但是,您永远不应该从初始化方法中调用生产者;太早了。改为实现SmartLifecycle 并将您的代码放入start() 方法中。

    phase 设置为Integer.MIN_VALUE,以便尽早启动。

    【讨论】:

    • >The send method of Producer is called in my initialising bean itself . 我再重复一遍 - 在 bean 初始化期间发送给生产者还为时过早。
    • 感谢加里的回答!那解决了。我现在将我的代码部署到 Kubernetes 并在卷挂载 /etc/secrets/keystore 下为 jks 创建了一个秘密。我正在尝试在我的代码设置 ssl.keystore.location 中访问 jks 到 file:///etc/secrets/keystore/ssl.jks。我现在没有找到文件异常:(
    猜你喜欢
    • 2016-09-18
    • 2020-05-08
    • 2021-09-28
    • 1970-01-01
    • 1970-01-01
    • 2020-10-22
    • 2017-02-01
    • 2023-03-03
    • 2020-11-26
    相关资源
    最近更新 更多