自定义处理器、接收器和生产者的 headermode 属性

headermode properties for Custom Processor, Sink and Producer

我正在使用以下自定义处理器来绑定消息通道。

package test;

import org.springframework.cloud.stream.annotation.Input;
import org.springframework.cloud.stream.annotation.Output;
import org.springframework.messaging.MessageChannel;
import org.springframework.messaging.SubscribableChannel;

public interface ProcessorInput {

    String INPUT_CHANNEL = "test1";
    String OUTPUT_CHANNEL = "test2";

    @Input(INPUT_CHANNEL)
    MessageChannel inputchannel();

    @Output(OUTPUT_CHANNEL)
    SubscribableChannel outputchannel();

}

我正在尝试使用以下属性控制 header 但它没有效果。

spring.cloud.stream.bindings.output.producer.headerMode=raw
spring.cloud.stream.bindings.input.consumer.headerMode=raw

我也试过在properties中绑定producer和consumer,还是不行。

spring.cloud.stream.bindings.output.consumer=test1
spring.cloud.stream.bindings.input.producer=test2
spring.cloud.stream.bindings.output.producer.headerMode=raw
spring.cloud.stream.bindings.input.consumer.headerMode=raw

如有任何更正,请提出建议。

活页夹对您的自定义频道名称一无所知。

您需要在 属性 中使用正确的频道名称,例如

spring.cloud.stream.bindings.test2.producer.headerMode=raw