JBoss Drools

JBoss BRMS Drools Example

In this article, we will see an example of JBoss BRMS. BRMS is a JBoss Rules based server-side solution for the management, storage, editing and deployment of rules. JBoss BRMS 6 is backed by a GIT based repository, which is very much in line with how the mainstream enterprises are storing and working to deploy their projects.

If you want to more know about Drools Introduction or its setup, read here.

This example uses the following frameworks:

  1. Maven 3.2.3
  2. JBoss BRMS 6.1.0.GA

1. What is a Business Rules Management System (BRMS)?

BRMS is a JBoss Rules based server-side solution for the management, storage, editing and deployment of rules and other JBoss Rules assets. BRMS helps us in managing rules, listed below:

  1. Manage rules in a multi user environment
  2. Centralized repository of rules
  3. Allowing change in a controlled fashion, with user friendly interfaces.
  4. Manage versions/deployment of rules
  5. Very useful if have lots of “business” rules

2. Users of BRMS

Its audience is a bit wide. It includes Business Analyst, Rule expert, Developer and Administrators. BRMS allows different roles to be assigned to different users based on what the user is going make out of it.

3. BRMS Installation

Download latest BRMS from the below link: http://www.jboss.org/products/brms/download/. The version I am using is JBoss BRMS 6.1.0.GA.

Before you start download make sure you are done with the below two:

  1. You must have an account with JBoss and logged in before you start the download.
  2. You must have already installed JBoss EAP else download JBoss EAP 6.4.0.GA Installer and install JBoss EAP.

Download the BRMS 6.1.0 Installer (jboss-brms-6.1.0.GA-installer.jar) to a directory of your choice.

Double click on the installer to run it.

You will be prompted to enter the JBoss EAP Home directory.

BRMS Installer - Enter JBoss EAP Home
BRMS Installer – Enter JBoss EAP Home

Follow the instructions as you navigate through each page.

You can create an application user using add-user.bat

C:\jboss-eap-6.4\bin>add-user.bat -a -u 'analyst' -p 'analyst1234!! -ro 'admin,analyst'

4. Start the JBoss BRMS

First start JBoss EAP Server. Open file explorer, navigate to the root of the JBoss EAP home/bin directory. Double click on standalone.bat.

Standalone.bat
Standalone.bat

Navigate to http://localhost:8080/business-central in a web browser.

JBoss BRMS Login
JBoss BRMS Login

Once you login, you will be taken to the below home page.

JBoss BRMS Home
JBoss BRMS Home

5. Import BRMS Repository

From main menu, Click on:

  1. Authoring -> Administration:
     

    BRMS Authoring- data-srcset=
    Administration” width=”295″ height=”359″> BRMS Authoring->Administration
  2. Next, click on Repositories -> Clone Repository:
     

    BRMS Repositories- data-srcset=
    Clone Repository” width=”316″ height=”329″> BRMS Repositories->Clone Repository
  3. In pop-up window, provide following:
     
    Repository name: brms-example
    Organizational unit: Example
    Git URL: https://github.com/rsatishm/DroolsBrmsExample.git
     

    BRMS Clone Repository
    BRMS Clone Repository
  4. After clone you should see below message:
     

    BRMS After Clone Message
    BRMS After Clone Message
  5. You can see the repository structure on the left side and details in the right panel.
     

    BRMS Project Repository
    BRMS Project Repository

6. Create Project

Navigate to Authoring->Project Authoring. Click on New Item->Project.

BRMS - Create Project
BRMS – Create Project

Enter a project name and click on Ok.

BRMS - Create new Project
BRMS – Create new Project

Once saved, you can see the project details.

BRMS - Project Details
BRMS – Project Details

7. Download the source code

This was an example about JBoss Drools BRMS.

Download
You can download the full source code of this example here: DroolsBrmsExample.zip

Ram Mokkapaty

Ram holds a master's degree in Machine Design from IT B.H.U. His expertise lies in test driven development and re-factoring. He is passionate about open source technologies and actively blogs on various java and open-source technologies like spring. He works as a principal Engineer in the logistics domain.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Back to top button