10 Replies Latest reply on Nov 23, 2013 3:17 AM by cyu021

    jBPM5 - Standalone Application

    justin.l

      Hi Experts,

       

      Is there anyway to configrue jBPM5 for a standalone application? any thoughts?

       

      Thanks for your reply.

        • 1. jBPM5 - Standalone Application
          bpmn2user

          You can run it as a standalone application. Keep all the JBPM5, Drools and the dependant  jar files in CLASSPATH and you can run it as a normal Java application.

          If you have human tasks that require approvals, you need a webserer. It can be JBoss, Tomcat, Weblogic,Websphere or even .Net.

          As long as you create a service using JBPM5, you can invoke it from another standalone or web application.

          • 2. jBPM5 - Standalone Application
            salaboy21

            You don't really need a container to run the human task server. You can just start it along with your application. It will automatically start a service for you. You can get rid of jboss, tomcat or any container.

            Greetings.

            • 3. Re: jBPM5 - Standalone Application
              bpmn2user

              While you do not need the Web container to run human task server (a piece of code can run standalone), you obviously need a  web container if you want to expose  the web pages through which you allow your users to approve human tasks.

               

              Again, JBPM5 itself does not need a web container, but if you want to expose human task approvals through web, then you need one.

              • 4. jBPM5 - Standalone Application
                salaboy21

                Hehe sorry.. I misread something..

                Of course if you have webpages involved you need a servlet container. But you can also aprove or reject tasks from your standalone application if you want. For that you can use the human task client APIs.

                Greetings.

                • 5. jBPM5 - Standalone Application
                  justin.l

                  Thanks for your thoughts and suggestions.

                   

                  The basic idea is, i want to use jBPM5.0 as stand alone application. With this

                   

                  1. I will be able to create the process definitions through programatically.

                  2. I will be able to create and read the process instances through API.

                  3. I will be able to create and approve human tasks through API without using any web-interface.

                   

                  Is it poissbie? Please guide me.

                   

                  Thanks!

                  • 6. jBPM5 - Standalone Application
                    salaboy21

                    Yes, it's possible 100%.

                    Take a look at the Emergency Service Demo application here: https://github.com/Salaboy/emergency-service-drools-app

                    A description about this application can be found at:

                    http://salaboy.wordpress.com/2011/01/01/emergency-service-drools-application/

                     

                    The Emergency Service Application it's a Swing Application and uses Slick 2D (a graphical library).

                    Here is a video explaining what the application is about: http://www.vimeo.com/18343529

                    Any feedback about it is appreciated.

                     

                    Hope it helps!

                    • 7. jBPM5 - Standalone Application
                      justin.l

                      Can you please guide me where can i find the documentation to build the process definition programatically in jBPM 5. Also is there any documentation available to compare the jPDL elements with BPMN as it is very simple to construct process definition xml file in jBPM 4.x compared to jBPM 5.

                       

                      Please guide me.

                       

                      Thanks!

                      • 8. jBPM5 - Standalone Application
                        salaboy21

                        If you have a very simple process you should start using simple BPMN elements. There is no direct comparision between jPLD and BPMN because both have different constructs and different execution semantic. You need to analyze your processes and decide which BPMN element use for model your business situation.

                        About programing the process using APIs, we have something called Fluent APis to build processes programatically, but I strongly recommend you to write your processes using the BPMN2 XML notation.

                        Greetings

                        • 9. Re: jBPM5 - Standalone Application
                          ayusman_dikshit

                          Thanks @MauricioSalantino.

                          that helps. I am trying to look for the build XML section that creates the tables required for JBPM 5.

                          This way I can have a separate DB setup step.

                          • 10. Re: jBPM5 - Standalone Application
                            cyu021

                            Hi,

                             

                            Now I can start a human task in a standalone application and claim/start/complete the human task in another application.

                            But I can only assign the human task to the default users such as "john" and "mary".

                            How can I assign the human task to other users by first adding users to the standalone jBPM instance?

                             

                            I setup my test-bench by following the option#2 in the following URL:

                            http://www.mastertheboss.com/jbpm5/jbpm-5-tutorial-first-example

                             

                            The configuration is as follows:

                            jBPM instance = jBPM 5.4

                            messaging = HornetQ

                            database = H2