在提供建议时,还有一个额外的考虑因素。 默认情况下,任何 discard 操作(当 filter 返回时)都在 advice 链的范围内执行。 这可能包括 discard 通道下游的所有流。 因此,例如,如果 discard 通道下游的 element 抛出异常并且存在重试建议,则会重试该过程。 此外,if 设置为 (异常在通知范围内引发)。FilterfalsethrowExceptionOnRejectiontruespring-doc.cn

设置为 修改此行为,discard (或 exception) 发生在调用通知链之后。discard-within-advicefalsespring-doc.cn