RBeL-Path is a XPath or JSON-Path inspired expression-language enabling the quick traversal of captured RBeL-Traffic (navigation of the RbelElement-tree). It is described in detail here.
Some examples:
$.body
The body of the message
$..Action
All nodes named "Action" (searches the whole tree)
$.body..Action
All nodes named "Action" in the body.
$..[?(content =~ "UTF-.*")]
All nodes matching the given JEXL-Expression. (Here: All nodes that have text starting with
"UTF-")
The JEXL syntax is described in detail here.
When executing a JEXL-Expression the context is initialized with a multitude of values, helping you write short and powerful JEXL-Expressions. In addition, you can always use RbelPath expression, which are described here. When using RbelPath make sure to add spaces before and after!
Some examples:
"RbelHttpMessageFacet" =~ facets
Checks if the message has the "RbelHttpMessageFacet" facet.
facets is an array which contains all
facets
recognized by the RbelConverter.
isRequest
Checks if the message is a request.
$.body.recordId == "X12349035"
Checks for the recordId of a decrypted EPA-VAU-message.
$.header.Content-Type ==
"application/json"
Check if the message is a JSON-message.
charset =~ "UTF-.*"
Check the charset with a regex.
$.body.recordId == "Y243631459" && charset ==
"UTF-8"
Combines the two criterions.