...
To test Drools, send some message to session1. As a result, session3 will receive this message.
4.2 This example describes mixed DSL/Drools calls.
Add the following business rules configuration:
Routing- Other blocks besides messageRules can be called
Rule1- General Routing based on message type
Rule2- Custom Drools call
Code Block import com.epam.fej.routing.RoutingContext import com.epam.fej.routing.drools.DroolsEngine import static dsl.CommonRulesDsl.rulesDSL DroolsEngine dre = drools as DroolsEngine rulesDSL(routingContext as RoutingContext) { routing { from "session1" to "session2" from "JMSProducer" to "JMSConsumer" } messageRules { messageRule("Rule 1: Route FIX messages only through DSL instructions.") { condition { msgType "AE" } action { sendTo "sessionAE" context exit } } messageRule("Rule 2: Route FIX messages only through Drools rules.") { source { id "ksession1" } condition { msgType "B" } action { custom { ctx -> dre.runStatefulAndClean("ksession1", ctx) routingContext.getDestinationById(ctx.messageEvent.getHeader ("destination")).send(ctx.messageEvent) } context exit } } } }