In the XML DSL, you can use a simple expression by putting the expression inside a
simple element. For example, to define a route that performs
filtering based on the contents of the foo header:
<route id="simpleExample">
<from uri="seda:orders"/>
<filter>
<simple>${in.header.foo}</simple>
<to uri="mock:fooOrders"/>
</filter>
</route>Sometimes—for example, if you have enabled Spring property placeholders or
OSGi blueprint property placeholders—you might find that the
${ syntax clashes with
another property placeholder syntax. In this case, you can disambiguate the
placeholder using the alternative syntax,
Expression}$simple{, for the simple
expression. For example:Expression}
<simple>Hello $simple{in.header.name}, how are you?</simple>From XML configuration, you can customize the start and end tokens ({
and }, by default) by overriding the SimpleLanguage
instance. For example, to change the start and end tokens to [ and
], define a new SimpleLanguage bean in your XML
configuration file, as follows:
<bean id="simple" class="org.apache.camel.language.simple.SimpleLanguage"> <constructor-arg name="functionStartToken" value="["/> <constructor-arg name="functionEndToken" value="]"/> </bean>
![]() | Note |
|---|---|
Customizing the start and end tokens affects all Apache Camel applications that
share the same |
By default, whitespace preceding and following a simple expression is automatically trimmed in XML DSL. So this expression with surrounding whitespace:
<transform>
<simple>
data=${body}
</simple>
</transform>is automatically trimmed, so that it is equivalent to this expression (no surrounding whitespace):
<transform>
<simple>data=${body}</simple>
</transform>If you want to include newlines before or after the expression, you can either explicitly add a newline character, as follows:
<transform>
<simple>data=${body}\n</simple>
</transform>or you can switch off auto-trimming, by setting the trim attribute to
false, as follows:
<transform trim="false">
<simple>data=${body}
</simple>
</transform>





![[Note]](imagesdb/note.gif)


