Eric D. Schabell: June 2014

Friday, June 27, 2014

Red Hat JBoss BPM Suite East Coast Tour in the Fall

In a few months I will be dropping in on Java User Groups (JUGs) and JBoss User Groups (JBugs) around the east coast of the USA.

These stops will be to provide JBoss BRMS & BPM Suite workshops that allow you to experience it all first hand, either on a local installation or in the OpenShift Cloud with our bpmPaaS experience.

Boston JUG

First stop will be in Boston for the Boston JUG, a group I have visited before and always enjoy seeing again. The meetup is scheduled for Monday, 8th of September starting at 18:00 hours. The abstract and location are to follow soon though you can bet on it being somewhere in Cambridge as that is where they tend to locate.

DCJBug

The next stop will be in Washington, DC for the DCJBug, a group more specifically targeting JBoss instead of just pure Java. The meetup is scheduled for Tuesday, 9th of September starting at 18:30 hours. Location will be at AEM Herndon Office, 13880 Dulles Corner Lane, Suite 300, Herndon, VA.

Look forward to meeting you all for some live coding, chatting, and JBoss fun.

Rule the World - Practical Rules & BPM Development

With this workshop you get a chance to do just that, unlock the power of business rules engines and business processing for your development projects. We will take you through it all step-by-step, building rules, domain specific languages, using the wizards and editors that the JBoss BRMS & BPM Suite provide to create your own rules or process project. You have a choice in this workshop between an online web shop project or an HR employee rewards process project.

This is a hands on experience that takes you from nothing to a fully working rules or process experience with JBoss open source software. No experience in rules or processes is required, you will be guided by the experienced speaker and go home ready to apply what you have learned in your own projects. 


(Depending on connectivity, potential to work on a bpmPaaS instance where you create your workshop project on an OpenShift hosted product.)

Thursday, June 26, 2014

Real life bpmPaaS with JBoss BPM Suite customer evaluation demo

Are you ready for BPM in the Cloud?

The fully cloud enabled JBoss BPM Suite has been made available on OpenShift as a bpmPaaS cartridge.

We have not been idle in the background as this was developed and have put together some automated cartridge installation projects that kick start you with pre-loaded demo projects.

First you need to have an account on OpenShift Origin, which you then can upgrade for free to the Bronze level.

This gives you access to the creation of MEDIUM sized gears which you will need for the bpmPaaS instances you create.
Customer evaluation demo in the Cloud

After that you can then create a new application via the online web administration console, where at the bottom of the page you will find a text box labeled Code Anything.

Paste cartridge URI, easy peasy!
This is a field where you can paste in one of the cartridge definitions we provide in the projects listed below. Just follow each projects readme file instructions and you will be up and running a full bpmPaaS based on JBoss BPM Suite in a matter of minutes.

The following projects are now available for you in bpmPaaS:

Wednesday, June 25, 2014

Red Hat JBoss BRMS & BPM Suite - taking out the Git garbage

This weeks tips and tricks article will help you to keep your current JBoss BPM Suite and JBoss Business Rules Management System (BRMS) running like a fine tuned machine.

The basic architecture of the two products are the same, relying on maven as the deployment mechanism behind the scenes and Git as the source code management system backing your projects.

When using Git there is a feature that we often never need to think about as it happens magically behind some of the commands we are using to clean up the git repository. It is known as garbage collection and you can find the Git garbage collection explained in great detail online.

The issue here that has been documented in the products "Known Issues" section, is that the Business Central workbench is interfacing behind the scenes with a git backend with commands that are not triggering the usual garbage collection on your repository.
Deployments leveraging Git

Without this maintenance you might begin to experience slower interactions with the repository as over time as files are growing rapidly.

To fix this you can run the git garbage collector in one of several ways:

# Run garbage collection in auto mode, allowing
# git to determine if it is needed before running.
#
$ cd <path-to-repos/project-repo>
$ git gc --auto


# Run garbage collection aggressively to prune
# everything it can, which will take longer.
#
$ cd <path-to-repos/project-repo>
$ git gc --aggressive --prune=all

You can put one of these garbage collection strategies into a script and run it periodically as you see fit.

Enjoy!


Tuesday, June 24, 2014

Red Hat JBoss BPM Suite - Online Workshop Building a Rewards Demo (Lab 16 Creating User Task Forms)

We are back with this weeks episode in the JBoss Business Rules Management System (BRMS) & Business Process Management (BPM) Suite online workshop series.

In this workshop we will be introducing you to the possibilities that abound for your business when leveraging these two new and exciting products.

Each week we will push out the next installment of this workshop that will lead you through building an employee rewards approval application, leveraging a business process with human tasks.

This project will be available as a completed project called the Rewards Demo, but we thought it would be interesting to help you build this human resource application from scratch.

The second half of the workshop will be taking you through the same type of exercise, but with the JBoss BPM Suite, where you will put together an application that leverages a process, leverages human tasks, allows you to design your own forms, and much more.

Last week we filled in the details for our rewards process.
Rewards process in process designer

This week we will create all the needed user task forms.

The weeks following will feed you a new set of exercises to help you to the next stage of development as you watch your very own BPM project march towards completion.

All of the workshop materials will be hosted online with the help of OpenShift, so all you need is a browser to follow along.

You do not need to be a Java developer, as this workshop focuses on only the online product web dashboard experience as an analyst would interact with the product. The only technical deviation from this will be the initial installation of the product, but we have detailed instructions and it is a three step process that should not take you more than a few minutes.

So what are you waiting for?

Get started creating the rewards process user task forms:



If you missed previous episodes of this workshop, you can backtrack to catch up.

Series Table of Contents:
  1. The introduction and installation of JBoss BRMS 
  2. Creating a new project
  3. Creating a domain model
  4. Creating a Domain Specific Language (DSL)
  5. Creating Guided Rules
  6. Creating Technical Rules (DRL)
  7. Creating Guided Decision Tables
  8. Create RuleFlow Process
  9. Create Test Scenarios
  10. Running the Cool Store
  11. Installing JBoss BPM Suite
  12. Creating Rewards Project
  13. Create Domain Model
  14. Create Rewards Process
  15. Complete Process Details
  16. Creating User Task Forms
  17. Running Rewards Demo
  18. Automated Task Reassignment
Be sure to keep an eye out for next weeks release of the following article which will bring you a step closer to completing your very own BPM project.

Note: if for some reason the online materials are not available, feel free to contact me.


Thursday, June 19, 2014

Real life bpmPaaS with JBoss BPM Suite HR employee rewards demo

Are you ready for BPM in the Cloud?

The fully cloud enabled JBoss BPM Suite has been made available on OpenShift as a bpmPaaS cartridge.

We have not been idle in the background as this was developed and have put together some automated cartridge installation projects that kick start you with pre-loaded demo projects.

First you need to have an account on OpenShift Origin, which you then can upgrade for free to the Bronze level.

This gives you access to the creation of MEDIUM sized gears which you will need for the bpmPaaS instances you create.

An HR employee rewards process
After that you can then create a new application via the online web administration console, where at the bottom of the page you will find a text box labeled Code Anything.

Paste cartridge URI, easy peasy!
This is a field where you can paste in one of the cartridge definitions we provide in the projects listed below. Just follow each projects readme file instructions and you will be up and running a full bpmPaaS based on JBoss BPM Suite in a matter of minutes.

The projects now available for you in bpmPaaS:

Wednesday, June 18, 2014

Red Hat JBoss BPM Suite - New HR Employee Rewards Demo

Two full years ago to date we put together the first release of an human resources (HR) process that was to evaluate the submission of employee rewards.

It was based on the release of JBoss BRMS 5.3 which included at that time rules, events, and processes in a single product. This version we are providing you today has been migrated up to the current JBoss BPM Suite 6.

We created a brand new project on github.com to host the Rewards Demo, updated the documentation, and even added a workshop in the documentation directory that you can use to build the demo from the ground up yourself.

Quickstart


  1. Clone project.
  2. Add products to installs directory.
  3. Run 'init.sh'.
  4. Start JBoss BPMS Server by running 'standalone.sh' or 'standalone.bat' in the /target/jboss-eap-6.1/bin directory.
  5. Login to http://localhost:8080/business-central (u:erics / p:bpmsuite).
  6. Rewards demo pre-installed as project.
  7. Read the documentation found in the docs directory & enjoy JBoss BPM Suite!

Enjoy!


Friday, June 13, 2014

Red Hat JBoss BPM Suite - Online Workshop Building a Rewards Demo (Lab 15 Completing Process Details)

We are back with this weeks episode in the JBoss Business Rules Management System (BRMS) & Business Process Management (BPM) Suite online workshop series.

In this workshop we will be introducing you to the possibilities that abound for your business when leveraging these two new and exciting products.

Each week we will push out the next installment of this workshop that will lead you through building an employee rewards approval application, leveraging a business process with human tasks.

This project will be available as a completed project called the Rewards Demo, but we thought it would be interesting to help you build this human resource application from scratch.

The second half of the workshop will be taking you through the same type of exercise, but with the JBoss BPM Suite, where you will put together an application that leverages a process, leverages human tasks, allows you to design your own forms, and much more.

Last week we designed or laid out our rewards process.
Rewards process in process designer

This week we fill in the details for our rewards process.

The weeks following will feed you a new set of exercises to help you to the next stage of development as you watch your very own BPM project march towards completion.

All of the workshop materials will be hosted online with the help of OpenShift, so all you need is a browser to follow along.

You do not need to be a Java developer, as this workshop focuses on only the online product web dashboard experience as an analyst would interact with the product. The only technical deviation from this will be the initial installation of the product, but we have detailed instructions and it is a three step process that should not take you more than a few minutes.

So what are you waiting for?

Get started completing the rewards process details:



If you missed previous episodes of this workshop, you can backtrack to catch up.

Series Table of Contents:
  1. The introduction and installation of JBoss BRMS 
  2. Creating a new project
  3. Creating a domain model
  4. Creating a Domain Specific Language (DSL)
  5. Creating Guided Rules
  6. Creating Technical Rules (DRL)
  7. Creating Guided Decision Tables
  8. Create RuleFlow Process
  9. Create Test Scenarios
  10. Running the Cool Store
  11. Installing JBoss BPM Suite
  12. Creating Rewards Project
  13. Create Domain Model
  14. Create Rewards Process
  15. Complete Process Details
  16. Creating User Task Forms
  17. Running Rewards Demo
  18. Automated Task Reassignment
Be sure to keep an eye out for next weeks release of the following article which will bring you a step closer to completing your very own BPM project.

Note: if for some reason the online materials are not available, feel free to contact me.


Wednesday, June 11, 2014

APAC Tech Exchange Day 2 - JBoss BRMS & BPM Suite Workshop

It has been a wild few weeks running up to and including the start today of the APAC Tech Exchange conference.

Virtual conference venue
I want to start by saying the organization has been amazing and done nothing short of move mountains in the face of many obstacles. Kudo's to Quinten Laureijs for first setting it up for Bangkok, Thailand, then moving it to Phuket, Thailand in the face of a military coup, then having to cancel it there to finally arrange a virtual event to deliver the planned content in the face of all odds.

After the excitement yesterday of trying to present my day one session in the middle of severe thunderstorms, day two started with sun and quite.

kicked off my workshop early in the morning my time for the attendees enjoying the end of their day in Asia. The entire workshop was hosted online using OpenShift instances making this not only a virtual conference, but a virtually cloudy conference.

We adapt, overcome, and continue to teach with or without lightning in the skies.

Rule the World - Practical Rules & BPM Development

With this workshop you get a chance to do just that, unlock the power of business rules engines and business processing for your development projects. We will take you through it all step-by-step, building rules, domain specific languages, using the wizards and editors that the JBoss BRMS & BPM Suite provide to piece together an online web shopping cart experience. You too can see what building an online web shop entails, the rules to guide shipping costs, promotional offers that need to be taken into account on each purchase, and monitoring live events as customers shop in the store so you can react to their activities.

This is a hands on experience that takes you from nothing to a fully working online retail shopping experience with JBoss open source software. No experience in rules or processes is required, you will be guided by the experienced speaker and go home ready to apply what you have learned in your own projects.






Tuesday, June 10, 2014

APAC Tech Exchange Day 1 - OpenShift Primer & guide to all things JBoss xPaaS

It has been a wild few weeks running up to and including the start today of the APAC Tech Exchange conference.

I want to start by saying the organization has been amazing and done nothing short of move mountains in the face of many obstacles. Kudo's to Quinten Laureijs for first setting it up for Bangkok, Thailand, then moving it to Phuket, Thailand in the face of a military coup, then having to cancel it there to finally arrange a virtual event to deliver the planned content in the face of all odds.
Severe weather warnings...

Today we kicked off the agenda and I got up early to present two sessions, both related to JBoss technologies in the OpenShift Cloud.

Sound-proof office?
As an additional challenge to present these sessions virtually over video conferencing tools, the weather took a very nasty turn here in the Netherlands.

I had to find someplace safe and quiet as multiple severe thunderstorms (there was a national weather alarm in effect) blew through.

As the sessions started, I was most worried about losing Internet and power, but all went off without a hitch.

Adapt... overcome... teach!
Well, almost, if you listen carefully you might hear in the background some thunder, rain, and lightning but I was in a pretty sound proofed shed so I think we pulled it off.

With nobody the wiser, I gave my first session in one of the strangest places I have ever had to work from as a JBoss Technology Evangelist.

I had to unplug everything just in case of lightning surges, was worried about losing connection, but the weather passed during the session and the sun came out after I was finished.

We adapt, overcome, and continue to teach no matter what the conditions are.

OpenShift Primer - time to launch your project into the Cloud

Ever wondered about all the new Cloud offerings out there? What is a PaaS? What is this thing called OpenShift? Whether your business is running on applications based on Java EE6, PHP or Ruby, the cloud is turning out to be the perfect environment for developing your business. There are plenty of clouds and platform-as-a-services to choose from, but where to start?

Join us for action-packed hour(s) of power where we'll show you how to deploy your existing application leveraging the xPaaS power of Openshift and JBoss. with the OpenShift PaaS in just minutes. All this and without having to rewrite your app to get it to work the way the cloud provider thinks your app should work.

If you want to learn about OpenShift PaaS and see how investing just a morning of your time can change everything you thought you knew about putting your business applications in the cloud, this session is for you!



The JBoss Cloud Guide to all things xPaaS

Whether your business applications are based on Java EE 6, PHP, or Ruby, cloud environments are turning out to be perfect for business development. There are plenty of cloud and Platform-as-a-Service (PaaS) options to choose from, but where do you start?

In this session, Eric Schabell will provide examples, demos, and practical tips for ratcheting up your knowledge of open source, middleware-based xPaaS functionality. Not only will you be able to set up diverse PaaS solutions, you’ll also learn how to use your existing application with the product of your choice. Using OpenShift by Red Hat, our PaaS, we’ll show examples with Red Hat ‘s BPM and mobile solutions, SwitchYard, Opta Planner, and Red Hat JBoss Portal, in just minutes. Join us to learn more about the practicality of Red Hat’s xPaaS vision and the role Red Hat JBoss Middleware can play.



Friday, June 6, 2014

Red Hat JBoss BPM Suite - Online Workshop Building a Rewards Demo (Lab 14 Create Rewards Process)

We are back with this weeks episode in the JBoss Business Rules Management System (BRMS) & Business Process Management (BPM) Suite online workshop series.

In this workshop we will be introducing you to the possibilities that abound for your business when leveraging these two new and exciting products.

Each week we will push out the next installment of this workshop that will lead you through building an employee rewards approval application, leveraging a business process with human tasks.

This project will be available as a completed project called the Rewards Demo, but we thought it would be interesting to help you build this human resource application from scratch.

The second half of the workshop will be taking you through the same type of exercise, but with the JBoss BPM Suite, where you will put together an application that leverages a process, leverages human tasks, allows you to design your own forms, and much more.

Last week we created the rewards process domain model.
Rewards process in process designer

This week we will design our rewards process using the process designer.

The weeks following will feed you a new set of exercises to help you to the next stage of development as you watch your very own BPM project march towards completion.

All of the workshop materials will be hosted online with the help of OpenShift, so all you need is a browser to follow along.

You do not need to be a Java developer, as this workshop focuses on only the online product web dashboard experience as an analyst would interact with the product. The only technical deviation from this will be the initial installation of the product, but we have detailed instructions and it is a three step process that should not take you more than a few minutes.

So what are you waiting for?

Get started creating the rewards process:



If you missed previous episodes of this workshop, you can backtrack to catch up.

Series Table of Contents:
  1. The introduction and installation of JBoss BRMS 
  2. Creating a new project
  3. Creating a domain model
  4. Creating a Domain Specific Language (DSL)
  5. Creating Guided Rules
  6. Creating Technical Rules (DRL)
  7. Creating Guided Decision Tables
  8. Create RuleFlow Process
  9. Create Test Scenarios
  10. Running the Cool Store
  11. Installing JBoss BPM Suite
  12. Creating Rewards Project
  13. Create Domain Model
  14. Create Rewards Process
  15. Complete Process Details
  16. Creating User Task Forms
  17. Running Rewards Demo
  18. Automated Task Reassignment
Be sure to keep an eye out for next weeks release of the following article which will bring you a step closer to completing your very own BPM project.

Note: if for some reason the online materials are not available, feel free to contact me.




Thursday, June 5, 2014

Red Hat JBoss BPM Suite - installation configuration tricks with properties

In this article we wanted to share some handy configuration tricks that can provide surprising help when setting up your JBoss BPM Suite. As the JBoss BPM Suite is a super set, including full JBoss BRMS functionality, the rest of this article will refers to the JBoss BPM Suite but apply to both products.

There is a rather large listing currently of properties you can use when configuring a JBoss BPM Suite installation, often hidden from you should you choose to leverage the provided graphical installer. When installing with the deployable version of the product, you have more control and can setup your environment properties as desired.

This will be the case as we examine some of these properties as used in the current OpenShift bpmPaaS cartridge to see how they auto install an existing project on startup of the JBoss BPM Suite product.

We will also refer to an example demo based on a Generic Loan process to show how several of the properties are used to configure this installation for ease of use locally on a single machine.

Configuration properties

The best place to start is with where these properties can be found or applied. You will need to look into the standalone.xml file found in your JBoss EAP server, when using a single standalone server you will find it in standalone/configuration/standalone.xml.

Here are some of the more interesting properties which we will present here, but is not an all inclusive list, see product documentation for more:
  • org.uberfire.nio.git.dir
    • Location of the local git repository stored under .niogit/
    • Default: working directory (meaning it is stored where you start the server from)
  • org.uberfire.nio.git.daemon.enabled
    • Enables/disables git daemon
    • Default: true
  • org.uberfire.nio.git.daemon.host
    • If git daemon enabled, uses this property as local host identifier
    • Default: localhost
  • org.uberfire.nio.git.ssh.enabled
    • Enables/disables ssh daemon
    • Default: true
  • org.uberfire.nio.git.ssh.host
    • If ssh daemon enabled, uses this property as local host identifier
    • Default: localhost
  • org.uberfire.nio.git.ssh.port
    • If ssh daemon enabled, uses this property as port number
    • Default: 8001
  • org.uberfire.nio.git.ssh.cert.dir
    • Location of the directory .security where local certificates will be stored
    • Default: working directory (meaning it is stored where you start the server from)
  • org.uberfire.metadata.index.dir
    • Place where Lucene .index folder will be stored
    • Default: working directory (meaning it is stored where you start the server from)
  • org.guvnor.m2repo.dir
    • Place where Maven repository folder will be stored
    • Default: working-directory/repositories/kie (meaning it is stored where you start the server from)
  • org.kie.example.repositories
    • Folder from where repositories will be cloned.
    • Default: Not used.
The properties listed above that have been marked in bold will be examined in more detail below.

Example usage in local install

When initially setting up the product for use, one can adjust configuration with the help of certain system properties. These will provide an easy user experience that does not involve having to login, setup the organization structure, clone in the new project, and finally opening a process in the designer to start exploring the project.

Below we show how to (from top line working downwards) point to an expected location to ensure our git repository for our projects is always found in the JBoss EAP bin directory. We also include the same location for the Lucene index and the products maven repository that will be found under .../bin/repositories/kie/.
<!-- Configuration property found in standalone.xml -->
<property name="org.uberfire.nio.git.dir" value="${jboss.home.dir}/bin" />
<property name="org.uberfire.metadata.index.dir" value="${jboss.home.dir}/bin" />
<property name="org.guvnor.m2repo.dir" value="${jboss.home.dir}/bin" />

Example usage in bpmPaaS

Within the OpenShift bpmPaaS cartridge there is a need to provide a copy of the Mortgage demo project pre-installed. This is achieved using the following property, that is set to look into the provided directory for any projects and will clone them into the product by using the bare .git found inside a project.
<!-- Configuration property found in standalone.xml -->
<property name="org.kie.example.repositories" value="${jboss.server.config.dir}/initial" />

This property ensures you can create a directory in jboss-eap-version/standalone/configuration/initial/ and populate it with checked out projects you want to appear when you start the JBoss BPM Suite.

We hope these tips shed some light on how you can easily streamline your personal installations and demo setups with JBoss BPM Suite.

For more configuration tips...


Tuesday, June 3, 2014

Red Hat JBoss BPM Suite - Online Workshop Building a Rewards Demo (Lab 13 - Creating Domain Model)

We are back with this weeks episode in the JBoss Business Rules Management System (BRMS) & Business Process Management (BPM) Suite online workshop series.

In this workshop we will be introducing you to the possibilities that abound for your business when leveraging these two new and exciting products.

Each week we will push out the next installment of this workshop that will lead you through building an employee rewards approval application, leveraging a business process with human tasks.

This project will be available as a completed project called the Rewards Demo, but we thought it would be interesting to help you build this human resource application from scratch.

The second half of the workshop will be taking you through the same type of exercise, but with the JBoss BPM Suite, where you will put together an application that leverages a process, leverages human tasks, allows you to design your own forms, and much more.
Last week we created our rewards process project.
Using the domain modeler

This week we continue onwards by creating the domain model for the rewards process using the domain modeler.

The weeks following will feed you a new set of exercises to help you to the next stage of development as you watch your very own BPM project march towards completion.

All of the workshop materials will be hosted online with the help of OpenShift, so all you need is a browser to follow along.

You do not need to be a Java developer, as this workshop focuses on only the online product web dashboard experience as an analyst would interact with the product. The only technical deviation from this will be the initial installation of the product, but we have detailed instructions and it is a three step process that should not take you more than a few minutes.

So what are you waiting for?

Get started by creating our rewards process domain model:



If you missed previous episodes of this workshop, you can backtrack to catch up.

Series Table of Contents:
  1. The introduction and installation of JBoss BRMS 
  2. Creating a new project
  3. Creating a domain model
  4. Creating a Domain Specific Language (DSL)
  5. Creating Guided Rules
  6. Creating Technical Rules (DRL)
  7. Creating Guided Decision Tables
  8. Create RuleFlow Process
  9. Create Test Scenarios
  10. Running the Cool Store
  11. Installing JBoss BPM Suite
  12. Creating Rewards Project
  13. Create Domain Model
  14. Create Rewards Process
  15. Complete Process Details
  16. Creating User Task Forms
  17. Running Rewards Demo
  18. Automated Task Reassignment
Be sure to keep an eye out for next weeks release of the following article which will bring you a step closer to completing your very own BPM project.

Note: if for some reason the online materials are not available, feel free to contact me.