This is an example project for the Effective Business Process Management with JBoss BPM book, used in chapter 2. This example project is an online employee travel booking process project. It contains multiple web services for looking up data for the process and rules to calculate pricing. Furthermore, there are several tasks that can be activated to evaluate pricing and to review the final booking data before completing the booking.
-
Download JBoss EAP & JBoss BPM Suite, add to installs directory (see installs/README).
-
Run 'init.sh' or 'init.bat' file. 'init.bat' must be run with Administrative privileges.
-
Start JBoss BPMS Server by running 'standalone.sh' or 'standalone.bat' in the /target/jboss-eap-7.0/bin directory.
Login to http://localhost:8080/business-central
- login for admin and other roles (u:erics / p:bpmsuite1!)
Start process with data in external web form: http://localhost:8080/external-client-ui-form-1.0
The following steps can be used to configure and run the demo in a container
-
Download JBoss EAP & JBoss BPM Suite, add to installs directory (see installs/README).
-
Build demo image.
docker build -t effectivebpmwithjbossbpm/chapter-2-travel-agency-demo .
-
Start demo container
docker run -it -p 8080:8080 -p 9990:9990 -p 8001:8001 effectivebpmwithjbossbpm/chapter-2-travel-agency-demo
Login to http://localhost:8080/business-central (u:erics / p:bpmsuite1!)
Start process with data in external web form: http://localhost:8080/external-client-ui-form-1.0
Read-write access to container JBoss BPM Suite git repo is available through ssh:
$ git clone ssh://erics@localhost:8001/specialtripsagency
Cloning into 'specialtripsagency'...
The authenticity of host '[localhost]:8001 ([::1]:8001)' can't be established.
DSA key fingerprint is SHA256:ok9ukS2j16
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[localhost]:8001' (DSA) to the list of known hosts.
Password authentication
Password: bpmsuite1!
Receiving objects: 100% (3067/3067), 553.36 KiB | 0 bytes/s, done.
remote: Total 3067 (delta 0), reused 3067 (delta 0)
Resolving deltas: 100% (1687/1687), done.
- login for admin role (u:erics / p:bpmsuite1!)
-
Build & deploy project.
-
Start process with following data in start form (either from JBoss BPM Suite dashboard or using external client UI deployed at http://localhost:8080/external-client-ui-form-1.0):
Name: [your-name]
Email Adress: [any-email]
Number of Travellers: 2
From Destination: London
To Destination: Edinburgh
Preferred Date of Departure: 2014-12-20
Preferred Data of Arrival: 2014-12-29
Other Details / Notes: [any-text]
-
Two web services will be run and a sub-process to calculate the cost before deciding it is not needed that this booking be reviewed on pricing, so you will find a task 'Employee Booking' for you to process.
-
Navigate to the "Tasks" tab -> "Task List" and click on it.
-
Expand the right-side pane window. Click on the "Work" tab and click on "claim" to claim the task.
-
Fill in the form provided for the task, it allows review of all the booking data submitted, generated by services and calculated by the rules. You can request a review to send it back for a pricing review or check the completed box to finish the task and process (isBookingConfirmed). All tasks have automated reassignment, meaning if not completed within 1 minute they will be put back into the group.
-
Enter credit card details (beginning with 1234...) for compensation to be triggered., Expiry details of the card (e.g. 12/12) and your full name.
-
Check the logs and you will see that the process has been compensated.
-
To trigger different path for successful booking of Flights, just change the 'Credit Card details' to use any card number that does not begin with 1234....
See the tagged releases for the following versions of the product:
-
v1.3 - JBoss BPM Suite 6.4.0, JBoss EAP 7.0.0 with travel agency installed and containerized installation option.
-
v1.2 - JBoss BPM Suite 6.3.0, JBoss EAP 6.4.7 with travel agency installed and containerized installation option.
-
v1.1 - JBoss BPM Suite 6.2.0, JBoss EAP 6.4.4 and new travel agency process updates installed.
-
v1.0 - JBoss BPM Suite 6.2.0, JBoss EAP 6.4.4 and travel agency installed.