You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

JavaScript

Camel supports JavaScript/ECMAScript among other Scripting Languages to allow an Expression or Predicate to be used in the DSL or Xml Configuration.

To use a JavaScript expression use the following Java code

... javaScript("someJavaScriptExpression") ... 

For example you could use the javaScript function to create an Predicate in a Message Filter or as an Expression for a Recipient List

Example

In the sample below we use JavaScript to create a Predicate use in the route path, to route exchanges from admin users to a special queue.

    from("direct:start")
        .choice()
            .when().javaScript("request.headers.get('user') == 'admin'").to("seda:adminQueue")
        .otherwise()
            .to("seda:regularQueue");

And a Spring DSL sample as well:

        <route>
            <from uri="direct:start"/>
            <choice>
                <when>
                    <javaScript>request.headers.get('user') == 'admin</javaScript>
                    <to uri="seda:adminQueue"/>
                </when>
                <otherwise>
                    <to uri="seda:regularQueue"/>
                </otherwise>
            </choice>
        </route>

Error rendering macro 'include'

org.owasp.validator.html.ScanException: java.util.EmptyStackException

  • No labels