188.7. 抑制例外
可从 Camel 2.16 开始
默认情况下,如果 json 有效负载没有相应配置 jsonpath 表达式的有效路径,则 jsonpath 将抛出异常。在一些用例中,如果 json 有效负载包含可选数据,您可能希望忽略它。因此,您可以将选项设置为 true 以忽略这种情况,如下所示:
from("direct:start")
.choice()
// use true to suppress exceptions
.when().jsonpath("person.middlename", true)
.to("mock:middle")
.otherwise()
.to("mock:other");在 XML DSL 中:
<route>
<from uri="direct:start"/>
<choice>
<when>
<jsonpath suppressExceptions="true">person.middlename</jsonpath>
<to uri="mock:middle"/>
</when>
<otherwise>
<to uri="mock:other"/>
</otherwise>
</choice>
</route>
此选项也位于 @JsonPath 注释。