Book Image

Mastering JBoss Drools 6

By : Mariano De Maio, Mauricio Salatino, Esteban Aliverti
Book Image

Mastering JBoss Drools 6

By: Mariano De Maio, Mauricio Salatino, Esteban Aliverti

Overview of this book

Mastering JBoss Drools 6 will provide you with the knowledge to develop applications involving complex scenarios. You will learn how to use KIE modules to create and execute Business Rules, and how the PHREAK algorithm internally works to drive the Rule Engine decisions. This book will also cover the relationship between Drools and jBPM, which allows you to enrich your applications by using Business Processes. You will be briefly introduced to the concept of complex event processing (Drools CEP) where you will learn how to aggregate and correlate your data based on temporal conditions. You will also learn how to define rules using domain-specific languages, such as spreadsheets, database entries, PMML, and more. Towards the end, this book will take you through the integration of Drools with the Spring and Camel frameworks for more complex applications.
Table of Contents (18 chapters)
Mastering JBoss Drools 6
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

KieScanner


If there is a universal truth about applications, it is that business rules will change over time. The criteria used to apply a discount, or even the amount of the discount itself, we are using today will—without any doubt—have to be modified tomorrow. We, as the architects and developers of these applications, have to be prepared for this.

Drools provides us with a way to mitigate this issue already. The separation that Drools introduces between the applications and the business logic allows us to decouple the changes happening in the business logic—which are usually frequent—from the changes happening in the application's infrastructure or UI, which are not so frequent.

Regardless of all the advantages provided by this separation, there is still one major problem that remains: every time our business logic (rules) changes, any KieContainer that referenced it has to be notified.

We already saw how a KieContainer can be manually updated when a new version of a KieModule is deployed...