Home » Java » Enterprise Java » A Micro Services Migration Story with JBoss BPM Travel Agency

About Eric Schabell

Eric Schabell
Eric D. Schabell is the JBoss technology evangelist for Integration and BPM products at Red Hat. He is a writer, cyclist and software engineer but not always in that order.

A Micro Services Migration Story with JBoss BPM Travel Agency

Some time ago we launched a rather expansive JBoss Travel Agency demo project to show some of the more interesting feature of JBoss BPM Suite. travel-agency

We provided a collection of videos that not only show you how to install it, what the various rule and process artifacts are in the project, but we also walk you through the various paths you can take during actual use of the JBoss Travel Agency process.

The project continued to expand over time, adding on not just a bookings process, but also a payment process that included advanced features like compensation (rolling back bookings), integration of traditional web services in service tasks and a credit card fraud detection system.

JBoss Fuse based micro services migration.

JBoss Fuse based micro services migration.

We have showcased this project on several online webinars, including together with PEX Processing Network.

What is left you might ask?

We thought long and hard on this before deciding that an interesting idea might be to look at migration of the existing projects web services to micro services based on JBoss Fuse technology.

Nothing like progressing into a modern enterprise architecture, right?

Demo project

As always we bring you not only a solution, but a reusable demo project you can easily spin up yourself to explore the details around how a JBoss BPM project would integrate with the micro services we migrate from existing classic web services with JBoss Fuse.

The project is called the JBoss BPM Suite & JBoss Fuse Travel Agency Integration Demo.

The original web services sources can be found in the projects directory for your convenience, but are not built by default when we run the installation.

compensation-process

The project installs JBoss BPM Suite 6.1 with the Travel Agency projects rules, process, forms and sub-flow. It then installs JBoss Fuse 6.1.1. and configures in the background the Camel routes, containers and deploys this into FuseFabric.

You can find more details around the JBoss Fuse setup in the article by Christina Lin.

To setup this project there are just a few simple steps to get going, but note that there are 6 containers being setup and deployed so expect an initial installation to take some minutes:

Installation

  1. Download and unzip.
  2. Add products to installs directory.
  3. Run ‘init.sh’ or ‘init.bat’ file. ‘init.bat’ must be run with Administrative privileges.
  4. Start the JBoss BPM Suite server, login, build and deploy JBoss BPM Suite process project at http://localhost:8080/business-central (u:erics/p:bpmsuite1!).
     
    Containers auto setup for you!

    Containers auto setup for you!

  5. Add fabric server passwords for Maven Plugin to your ~/.m2/settings.xml file the fabric server’s user and password so that the maven plugin can login to the fabric.
    <!-- Server login to upload to fabric. -->
     <servers>
         <server>
             <id>fabric8.upload.repo</id>
             <username>admin</username>
             <password>admin</password>
         </server>
     </servers>
  6. Start Fuse Server, by running ‘fuse’ or ‘fuse.bat’:
     
    External client web application showcasing RestAPI integration!

    External client web application showcasing
    RestAPI integration!

  7. Login to Fuse management console at: http://localhost:8181 (u:admin/p:admin).
  8. Under Runtime tab, you will see 6 containers, select and start them all.

Once you are up and running just build the project in JBoss BPM Suite and start the Fuse containers as the documentation describes.

You can now run the process by submitting through the client web application at: http://localhost:8080/external-client-ui-form-1.0

The process will now be using the various micro services and show full JBoss BPM Suite and JBoss Fuse integration in an easy to explore demo project.

We hope you enjoy this one too and feel free to browse for more at JBoss Demo Central.

(0 rating, 0 votes)
You need to be a registered member to rate this.
Start the discussion Views Tweet it!
Do you want to know how to develop your skillset to become a Java Rockstar?
Subscribe to our newsletter to start Rocking right now!
To get you started we give you our best selling eBooks for FREE!
1. JPA Mini Book
2. JVM Troubleshooting Guide
3. JUnit Tutorial for Unit Testing
4. Java Annotations Tutorial
5. Java Interview Questions
6. Spring Interview Questions
7. Android UI Design
and many more ....
I agree to the Terms and Privacy Policy

Leave a Reply

avatar

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

  Subscribe  
Notify of