特殊通道

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

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

有關訊息通道和攔截器的更多資訊,請參閱 Java DSL 章的訊息通道

© . This site is unofficial and not affiliated with VMware.