Drools 5.1 Expands Spring Support, Adds CXF, Camel, and JMX Monitoring

DZone 's Guide to

Drools 5.1 Expands Spring Support, Adds CXF, Camel, and JMX Monitoring

· Integration Zone ·
Free Resource
JBoss recently released the next version of their business logic integration platform, which is now split into five sub projects.  The main focus for Drools 5.1 has been to provide better consumability for users with declarative services based on Spring, Apache Camel, and Apache CXF.  Project developers have also impvoed the BPMN 2 implementation and added an improved Rete algorithm for reduced memory consumption and better scalability.  

Drools provides a unified, integrated platform for Workflow, Rules, and Event Processing.  Each aspect of the platform is designed as a first class citizen.  The five sub projects include:

  • Drools Guvnor (BRMS/BPMS)
  • Drools Expert (rule engine)
  • Drools Flow (process/workflow)
  • Drools Fusion (event processing/temporal reasoning)
  • Drools Planner

Drools Intro Video

What's New?

Since Drools 5.0, you've been able to configure a KnowledgeBase with an XML change-set instead of programatically.  In the 5.1 API the change-set namespace is versioned, meaning the 1.0.0 xsd should be referenced.  

The core additions to Drools 5.1 include JMX monitoring, expanded Spring support, Camel support, CXF support, a Session Inspection and Reporting Framework, and Knowledge Agent Incremental Change Support.  

For Spring, the XSD can be found in the drools-spring jar.  "http://drools.org/schema/drools-spring" is the namespace:
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"




xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd

http://drools.org/schema/drools-spring http://anonsvn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-container/drools-spring/src/main/resources/org/drools/container/spring/drools-spring-1.0.0.xsd

http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">

<drools:resource id="resource1" type="DRL" source="classpath:org/drools/container/spring/testSpring.drl"/>

<drools:kbase id="kbase1">


<drools:resource type="DRL" source="classpath:org/drools/container/spring/testSpring.drl"/>

<drools:resource ref="resource1"/>

<drools:resource source="classpath:org/drools/container/spring/IntegrationExampleTest.xls" type="DTABLE">

<drools:decisiontable-conf input-type="XLS" worksheet-name="Tables_2" />




<drools:mbeans enabled="true" />

<drools:event-processing-mode mode="STREAM" />




Drools Expert includes a differential update which has reduced memory consumption and increased scalability.  Exit points have been replaced by channels and live queries are now supported.  

Implementation of the BPMN 2.0 specification has expanded in Drools Flow as well as throughout the entire Drools tool chain.  Drools Flow also includes a new web-based management console, pluggable variable persistence, improved process instance migration, and an installer that simplifies installation of Drools Guvnor, the Eclipse plugin, and the GWT console.

Drools Guvnor now has a cleaner appearance and adds several new features:

  • Discussions
  • Inbox for monitoring changes
  • Bulk Importer
  • Built in Selector
  • Rule Templates

  • Fact Constraints
  • Guided editor improvements
  • Working Sets

For the full rundown of Drools 5.1's many new features, check out this section of the Drools Docs.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}