kafkaストリームバインダーを使用したSpringクラウドストリーム:ストリームプロセッサ用に `trusted.packages`を設定する方法(コンシューマーやプロデューサーとは異なります)

ゴンザロボロビオ

私はこのような単純なストリームプロセッサ(コンシューマー/プロデューサーではない)を持っています(Kotlin)

@Bean
fun processFoo():Function<KStream<FooName, FooAddress>, KStream<FooName, FooAddressPlus>> {
    return Function { input-> input.map { key, value ->
        println("\nPAYLOAD KEY: ${key.name}\n");
        println("\nPAYLOAD value: ${value.address}\n");
        val output = FooAddressPlus()
        output.address = value.address
        output.name = value.name
        output.plus = "$value.name-$value.address"
        KeyValue(key, output)
    }}
}

これらのクラスFooNameFooAddressおよびFooAddressPlusプロセッサと同じパッケージです。これが私の設定ファイルです:

spring.cloud.stream.kafka.binder:
  brokers: localhost:9093

spring.cloud.stream.function.definition: processFoo

spring.cloud.stream.kafka.streams.binder.functions.processFoo.applicationId: foo-processor
spring.cloud.stream.bindings.processFoo-in-0:
  destination: foo.processor
spring.cloud.stream.bindings.processFoo-out-0:
  destination: foo.processor.out

spring.cloud.stream.kafka.streams.binder:
  deserializationExceptionHandler: logAndContinue
  configuration:
    default.key.serde: org.apache.kafka.common.serialization.Serdes$StringSerde
    default.value.serde: org.apache.kafka.common.serialization.Serdes$StringSerde
    commit.interval.ms: 1000

プロセッサを実行すると、次のエラーが発生します。

The class '<here_comes_package>.FooAddress' is not in the trusted packages: [java.util, java.lang]. 
If you believe this class is safe to deserialize, please provide its name. 
If the serialization is only done by a trusted source, you can also enable trust all (*).

Kafka Streams Binder Stream Processorを使用するときに、信頼できるパッケージをすべてに設定するための最良の方法は何ですか?(コンシューマー/プロデューサーではなくストリームプロセッサー)

どうもありがとう!

ゲーリーラッセル

以下で任意の構成プロパティ(Kafkaストリームプロパティ、serdesで使用されるプロパティなど)を設定できます...binder.configuration

spring:
  cloud:
    streams:
      kafka:
        streams:
          binder:
            configuration:
              spring.json.trusted.packages: '*'

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ