2017-12-05 12 views
0

메시지 채널을 바인딩하는 데 다음 사용자 지정 프로세서를 사용하고 있습니다.사용자 정의 프로세서, 싱크 및 프로듀서 헤드 코드 속성

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

바인더는 사용자 정의 채널 이름에 대해 아무것도 모릅니다.

속성에서 올바른 채널 이름을 사용해야합니다 (예 :

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

고마워, 게리 –