DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
For example you could use EL inside a Message Filter in XML
| Code Block | ||||
|---|---|---|---|---|
| ||||
<route>
<from uri="seda:foo"/>
<filter>
<el>${in.headers.foo == 'bar'}</el>
<to uri="seda:bar"/>
</filter>
</route>
|
You could also use slightly different syntax, e.g. if the header name is not a valid identifier:
| Code Block | ||||
|---|---|---|---|---|
| ||||
<route>
<from uri="seda:foo"/>
<filter>
<el>${in.headers['My Header'] == 'bar'}</el>
<to uri="seda:bar"/>
</filter>
</route>
|
You could use EL to create an Predicate in a Message Filter or as an Expression for a Recipient List
Variables
Variable | Type | Description |
|---|---|---|
exchange | Exchange | the Exchange object |
in | Message | the exchange.in message |
out | Message | the exchange.out message |
Samples
You can use EL dot notation to invoke operations. If you for instance have a body that contains a POJO that has a getFamiliyName method then you can construct the syntax as follows:
| Code Block |
|---|
"${in.body.familyName}"
|
Dependencies
To use EL in your camel routes you need to add the a dependency on camel-juel which implements the EL language.
If you use maven you could just add the following to your pom.xml, substituting the version number for the latest & greatest release (see the download page for the latest versions).
| Code Block |
|---|
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-juel</artifactId> <version>1<version>x.3x.0<x</version> </dependency> |
Otherwise you'll also need to include JUEL.