Fuse 6 is no longer supported
As of February 2025, Red Hat Fuse 6 is no longer supported. If you are using Fuse 6, please upgrade to Red Hat build of Apache Camel.Este conteúdo não está disponível no idioma selecionado.
32.7. Predicates
Basic predicates Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
You can use
xpath
in the Java DSL or the XML DSL in a context where a predicate is expected—for example, as the argument to a filter()
processor or as the argument to a when()
clause.
For example, the following route filters incoming messages, allowing a message to pass, only if the
/person/city
element contains the value, London
:
from("direct:tie") .filter().xpath("/person/city = 'London'").to("file:target/messages/uk");
from("direct:tie")
.filter().xpath("/person/city = 'London'").to("file:target/messages/uk");
The following route evaluates the XPath predicate in a
when()
clause:
from("direct:tie") .choice() .when(xpath("/person/city = 'London'")).to("file:target/messages/uk") .otherwise().to("file:target/messages/others");
from("direct:tie")
.choice()
.when(xpath("/person/city = 'London'")).to("file:target/messages/uk")
.otherwise().to("file:target/messages/others");
XPath predicate operators Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The XPath language supports the standard XPath predicate operators, as shown in Table 32.2, “Operators for the XPath Language”.
Operator | Description |
---|---|
= | Equals. |
!= | Not equal to. |
> | Greater than. |
>= | Greater than or equals. |
< | Less than. |
<= | Less than or equals. |
or | Combine two predicates with logical and. |
and | Combine two predicates with logical inclusive or. |
not() | Negate predicate argument. |