Custom Processor,Sink和Producer的headermode属性

时间:2017-12-05 17:39:22

标签: spring-cloud-stream spring-cloud-config

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

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();

}

我正在尝试使用以下属性控制标头,但它无效。

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

我还尝试在属性中绑定生产者和消费者,但仍无效。

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

请建议任何更正。

1 个答案:

答案 0 :(得分:1)

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

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

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