【发布时间】:2021-03-15 09:14:14
【问题描述】:
我试图在try catch 中使用reactor.core.publisher.Flux 来验证list 的值,但是当map 抛出异常时,catch 根本不会捕获它。我真的不明白这里发生了什么。一些帮助将不胜感激。
这正是我想要做的:
public Flux<Something> execute(final List<Line> lines) {
try {
return this.getFlux(lines)
.map(line -> this.validateLine(line))//this throws my custom exception if the condition applies
.map(line -> this.doSomething(line))
.map(line -> this.doSomethingElse(line));
} catch (myCustomException e) {
return something;
}
}
我可以看到validate 方法运行良好并通过调试引发异常,但catch 似乎不起作用,我看不出有什么问题。
【问题讨论】:
-
这真的与 java 流有关,而不是与
Flux的反应管道有关吗? -
其实是的,这和
Flux有关,我从来没有见过他们,我想了解他们是如何工作的
标签: java java-8 try-catch flux