jBPM5 Developer Guide published!

After almost 2 years of work and a lot of rewrites the jBPM5 Developer Guide is out! The book is oriented to technical people willing to use jBPM5 framework. If you are already using it, this book serves as a reference book containing the most important topics regarding jBPM5 such as: domain specific processes, human tasks, persistence & transactions and more.

This book goes one step further and explains how jBPM5 and Drools frameworks coexist and how we can get a profit from this symbiosis.  Different architectures and design patterns mixing both processes and rules are explained and discussed in the last 4 chapters of the book.

To get your copy of ‘jBPM5 Developer Guide’ please take a look at the following links:

From Packt: http://www.packtpub.com/jboss-business-process-management-5-jave-developer-guide/book

From Amazon: http://www.amazon.com/jBPM5-Developer-Guide-Mauricio-Salatino/dp/1849516448/ref=sr_1_1?s=books&ie=UTF8&qid=1355931138&sr=1-1&keywords=jbpm5+developer+guide

About these ads
Tagged , , , , , , , , , , ,

6 thoughts on “jBPM5 Developer Guide published!

  1. Samuel says:

    Hola Mauricio

    Muy bueno tu blog, felicidades, espero me puedas responder dos dudas que tengo.

    Tengo HumanTask configurado con MySQL y en mi aplicacion lo consumo a travez de HornetQ. Mi proyecto web utiliza JSF + Spring y manejo algunos procesos con jBPM 5.3, el problema que tengo es que cuando reinicio el server de mi aplicacion, los procesos que ya se habian arrancado se pierden, con las HumanTask no tengo problemas, puedo consultarlas e incluso finalizarlas, sin embargo el proceso no continua cuando cierro las tareas, ¿Como debo manejar la persistencia de los procesos para que no se pierdan? jBPM Console crea unas tablas adicionales a las que crea Human Task, tambien esta configurado con MySQL, cuando inicio una nueva copia del proceso demo(Evaluation), veo en el log inserts tanto a las tablas ProcessInstanceInfo y Task, éstos procesos no se pierded aun cuando reinicio el servidor de la suite jBPM, ¿como puedo lograr este comportamiento en mi aplicativo? Actualmente tengo esto:

    ?????
    ?????

    necesito agregar la configuracion hacia esa base en mi aplicacion(transaction manager y entity manager) para que jbpm pueda persistir los procesos y no se pierdan cuando reinicio el server de mi aplicacion?

    La otra duda es referente a las human task, necesito definir una fecha u hora de expiracion de una Human Task, aunque veo que existe el campo en la tabla Task, en Web Designer no veo donde debo definir dicha fecha, podrias indicarme como puedo definir dicho tiempo de expiracion?

    Saludos y espero me puedas auxiliar. Gracias de antemano.

  2. sockosg says:

    Lo siento, no salio la configuracion que tengo….

    <drools:ksession id=”ksession” kbase=”kbase” type=”stateful”>
    <drools:configuration>
    <drools:jpa-persistence>
    <drools:entity-manager-factory ref=””/> ?????
    <drools:transaction-manager ref=”” /> ?????
    </drools:jpa-persistence>
    <drools:work-item-handlers>
    <drools:work-item-handler name=”createUserFile” ref=”wiCreateFile”/>
    <drools:work-item-handler name=”createZipFile” ref=”wiCreateZip”/>
    </drools:work-item-handlers>
    </drools:configuration>
    </drools:ksession>

    Saludos

    • salaboy says:

      Por lo que veo has configurado, solo la persistencia de las tareas, pero deberias tambien configurar la persistencia de la sesion. Por lo que se alcanza a ver de tu configuracion te esta faltando la configuracion del entity manager factory y del transaction manager. La idea es que eso lo configures en spring y le digas a drools y jbpm el nombre de el emf y el tx manager configurados por spring.

      • sockosg says:

        Antes que nada muchas gracias por tu tiempo. Efectivamente, solo habia configurado human task con MySQL, yo suponia que jBPM funcionaba igual que el componente Human Task, es decir como servidor, pero por lo que veo hay que embeberlo en cada proyecto que lo necesite, no es opcional como pasa con Human Task.

        Respecto a la segunda duda, me puedes ayudar con eso de los tiempos de expiracion de una Human Task? ya que no encuentro ejemplos concretos sobre como definir los tiempos de expiracion de las mismas ni como se comportan cuando esto ocurre.

        Saludos y de nueva cuenta muchisimas gracias.

  3. salaboy says:

    Para lo de las tareas deberias revisar TaskDeadlines y TaskNotifications. Dentro de la estructura de Task -> TaskData tenes un field que se llama Task Due Date.
    Con respecto a embeber el motor de procesos en tu aplicacion, tambien esta la posibilidad de usarlo como servicio. Tu podrias crear el servicio para exponerlo y de esta manera contener toda la configuracion de las tareas y el motor de procesos dentro de tu servicio.
    En jBPM6 esto ya se provee.

  4. Samuel says:

    Muchisimas gracias, me ha servido de mucho. Gracias por tu tiempo.

    Saludos.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 976 other followers

%d bloggers like this: