エラー処理に関するリアクタのリファレンスドキュメントを読んでいて、何かが間違っているようです。たとえば、このセクションでは、およそfallback method:プロジェクトのリアクタ:エラー処理に関する誤解を招く恐れのある文書
Flux.just("key1", "key2")
.flatMap(k -> callExternalService(k))
.onErrorResume(e -> getFromCache(k));
しかしonErrorResume()
ラムダは、一つのパラメータのみe
(スロー可能なエラー)をとります。どのようにk
(以前の値がフラックスによって放出されたか)はここで参照されていますか?
他の類似したコードスニペットがドキュメントにあります。私はこれを間違って読んでいる? ドキュメントが本当に間違っている場合は、どうすればこのケースを実際に処理できますか?以前の値で代替パスを実行してエラーから回復しますか?
ありがとう@Jens。しかし、onErrorResume()とonErrorReturn()メソッドの例外と以前の値の両方にアクセスできるのは良いことです。 – user882209
は、エラーメッセージに現在の値を設定できない理由を説明する回答を更新しました。 –