特殊通道

預設情況下,應用上下文中定義了兩個特殊通道:errorChannelnullChannelnullChannelNullChannel 的一個例項)的行為類似於 /dev/null,會將傳送給它的任何訊息記錄在 DEBUG 級別並立即返回。對於傳輸訊息的 org.reactivestreams.Publisher 負載應用特殊處理:它會立即在此通道中被訂閱,以啟動響應式流處理,儘管資料會被丟棄。響應式流處理(參見 Subscriber.onError(Throwable))中丟擲的錯誤會以 warn 級別記錄,以便進行可能的調查。如果需要對這類錯誤進行處理,可以使用帶有 Mono.doOnError() 自定義的 ReactiveRequestHandlerAdvice 應用於向此 nullChannel 生成 Mono 回覆的訊息處理器。無論何時您遇到不關心的回覆的通道解析錯誤時,都可以將受影響元件的 output-channel 屬性設定為 nullChannel(名稱 nullChannel 在應用上下文中是保留的)。

errorChannel 在內部用於傳送錯誤訊息,並且可以使用自定義配置進行覆蓋。這在錯誤處理中進行了更詳細的討論。

另請參閱 Java DSL 章中的訊息通道,以獲取有關訊息通道和攔截器的更多資訊。