Skip to Content

Drools JBoss Rules 5.0 Developer's Guide

£30.99
List Price: £37.19
Sub Title: 
<p>Develop rules-based business logic using the Drools platform</p>
Price: £30.99
Develop rules-based business logic using the Drools platform
ISBN: 
1847195644
ISBN 13: 
9781847195647
Drools JBoss Rules 5.0 Developer's Guide
Cover photo: 
Banner Image: 
Drools JBoss Rules 5.0 Developer's Guide.jpg
Available: 
Available
Rank: 
29
Sales Rank: 
9999
Language: 
English
Title Set Up Date: 
December 2009
Public Visibility Date: 
December 2009
Date Of Publication: 
July 2009
Out Of Print Date: 
December 2009
Page Count: 
320
Height: 
235
Width: 
191
Weight: 
0.50

A developer's guide to the powerful Java business rules platform.

Detailed Description: 

Business rules can help your business by providing a level of agility and flexibility. As a developer, you will be largely responsible for implementing these business rules effectively, but implementing them systematically can often be difficult due to their complexity. Drools, or JBoss Rules, makes the process of implementing these rules quicker and handles the complexity, making your life a lot easier!

This book guides you through all of the features of Drools, such as dynamic rules, the event model, and Rete implementation with high performance indexing. It will help you to set up the JBoss Rules platform and start creating your own business. It's easy to start developing with Drools if you follow its real-world examples that are intended to make your life easier.

Starting with an introduction to the basic syntax that is essential for writing rules, the book will guide you through validation and human-readable rules that define, maintain, and support your business agility. As a developer, you will be expected to represent policies, procedures and. constraints regarding how an enterprise conducts its business; this book makes it easier by showing you it can be done.

A real-life example of a banking domain allows you to see how the internal workings of the rules engine operate. A loan approval process example shows the use of the Drools Flow module. Parts of a banking fraud detection system are implemented with Drools Fusion module, which is the Complex Event Processing part of Drools. This in turn, will help developers to work on preventing fraudulent users from accessing systems in an illegal way.

Finally, more technical details are shown on the inner workings of Drools, the implementation of the ReteOO algorithm, indexing, node sharing, and partitioning.

  • Discover the power of Drools as a platform for developing business rules
  • Build a custom engine to provide real-time capability and reduce the complexity in implementing rules
  • Explore Drools modules such as Drools Expert, Drools Fusion, and Drools Flow, which adds event processing capabilities to the platform
  • Execute intelligent business logic with ease using JBoss/Drools, a stronger business-rules solution
  • Covers examples of a fraud detection system utilizing Drools CEP (Complex Event Processing) capabilities
Learn: 
  • Write more efficient business rules, and work with the Rete algorithm, node indexing, node sharing, and parallelization
  • Create a WS-HumanTask-compliant WorkItem in a process (workflow)
  • Implement concurrency control in cross-cutting functionalities to manage code easily
  • Write human-readable rules, and Domain Specific Language for your rules to easily understand and verify them
  • Generate a stateful service by using a stateful knowledge session that maintains state between invocations and teaches you how to transactionally persist this service
  • Develop dynamic remote knowledge-base loading to change rules in your application without even stopping it
  • Prepare decision tables for calculating account interest rates
  • Integrate Drools within your Java business application, and integrate it with the Spring framework
Approach: 

This is a problem-solution guide that starts with an introduction to a problem and continues with a discussion of the possible solution. The book covers best practices when working with Drools. The examples and their solutions are accompanied by plenty of code listings and figures providing a better view of the problem.

Audience: 

The book is for Java developers who want to create rules-based business logic using the Drools platform. Basic knowledge of Java is essential.

keywords: 
<p>Drools, JBoss Rules, Business Logic Integration Platform, BliP, Drools Fusion, Drools CEP, Drools Flow, Drools Expert, business rules, expert system, declarative programming, process, ruleflow, forward chaining, spaghetti code, Drools examples, Drools samples, decision tables, human-readable rules, Drools walk though ReteOO, alpha node, beta node, Rete, Rete algorithm, Rete network, Rete node sharing, Rete node indexing, Rete parallelization</p>
Special offer section
Display discount offers: 
Display discount offers
Buy 2 eBooks
and Get 50% Off
+
Buy Drools JBoss Rules 5.0 Developer's Guide with JBoss Drools Business Rules and get 50% off both the eBooks.
Just add both the eBooks to your shopping cart and enter djbr5db in the 'Enter Promotion Code' field. Click 'Add Promotion Code' and the discount will be applied.
View Best Selling eBook offers
Author Profile(s): 

Michal Bali

Michal Bali, freelance software developer, has more than 8 years of experience working with Drools and has an extensive knowledge of Java, JEE. He designed and implemented several systems for a major dental insurance company. He is an active member of the Drools community and can be contacted at michalbali@gmail.com.

Code Downloads: 
Discounted price: 
£30.99
Errata: 

Errata type: Typo | Page number: 11

you could simply reuse the validation rules in you batch import application) Should be changed to: you could simply reuse the validation rules in your batch import application).

 

<p><b>Errata type: Typo | Page number: 302 </b></p> <p>Therefore by purchasing Drupal 6 Site Builder Solutions, Packt will have given some of the money received to the Drools project. Should be changed to: Therefore by purchasing Drools JBoss Rules 5.0 Developer's Guide, Packt will have given some of the money received to the Drools project.</p> <p>&nbsp;</p>

Errata type: Code | Page number: 264

rule noCustomerWithLowAccountBalance when $address : Address( addressLine1 == "Rossa Avenue" ) not ( $account : Account( balance < 100 ) and Customer( accounts contains $account ) ) then System.out.println("No customers with low balance in "+ "their accounts live at Rossa Avenue"); end Should be changed to: rule noCustomerWithLowAccountBalance when $address : Address( addressLine1 == "Rossa Avenue" ) not ( $account : Account( balance < 100 ) and Customer( accounts contains $account, address == $address ) ) then System.out.println("No customers with low balance in "+ "their accounts live in Rossa Avenue"); end

 

Errata type: Typo | Page number: 11

We'll find out that the possible solutions will wary greatly. Should be changed to: We'll find out that the possible solutions will vary greatly.

 

Errata type: Typo | Page number: 32

In the section: (Not) memberOf In the first paragraph it states: "Conditions in code listing 33 can be rewritten as:" should be "Conditions in code listing 34 can be rewritten as:"

 

Errata type: Code | Page number: 31

Section: Testing object identities/equalities Code listing 30: Comparing two Customer instances using Customer method $customer1 : Customer() $customer2 : Customer( eval ( customer$2 != $customer1 ) ) should be (?): $customer2 : Customer( eval ( $customer2 != $customer1 ) )

 

<p><b>Errata type: Code | Page number: 62 </b></p> <p>$addressMap["_type_"] = "Address" causes a runtime error for me.So change it to $addressMap.put("_type_","Address") to get it to work.</p>
Sample Chapter: 
http://packtlib.packtpub.com/sites/default/files/sample_chapters/5647-drools-jboss-rules-sample-chapter-5-human-readable-rules.pdf
Brand: 
Open Source
Publishing division: 
OS
Pre-publication Band: 
A
Product Format: 
PB
Book Type: 
Normal
RAW: 
Normal
In PacktLib: 
Enabled
Miscellaneous Settings
Enable Google Ads conversion: 
Disabled
Upgrade authentication question: 
<p>In Chapter 12: Performance, what is the third word of the final paragraph in the section <b>before</b> the section: Node sharing</p>
Upgrade authentication answer: 
NotNode
Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us