Friday, March 6, 2015

jBPM 6.2.0.Final released

The bits for the jBPM 6.2 release are now available for you to download and try out !  

Version 6.2 comes with a few new features and a lot of bug fixes !  New features include a.o. EJB, (improved) OSGi and Camel endpoints support, a new asset management feature (to introduce a development and release branch and promote assets between both), social profiles and feeds and the ability to extend the workbench with your own plugins!

More details below, but if you want to jump right in:

Downloads
Documentation
Release Notes

Ready to give it a try but not sure how to start?  Take a look at the jbpm-installer chapter.

jBPM 6.2 is released alongside Drools (for business rules) and Optaplanner (for planning and constraint solving), check out the new features in the Drools release blog, including a brand new rules execution server and the Optaplanner release blog as well.

A big thank you to everyone who contributed to this release!

Some highlights from the release notes.

Core services

  • EJB: the jBPM execution server (that is for example embedded in our web-based workbench) now also comes with an EJB interface.  A refactoring of the underlying jbpm-services now makes the execution services accessible using pure Java, CDI, EJB and Spring. Remote interfaces using REST and JMS are still available as well of course !  A lot more details are described in Maciej's blog here.
  • Deployments (defining which versions of which projects are currently active in the execution server) are now by default stored in the database.  This greatly simplifies the architecture in a clustered environment in case you are only using our runtime side of our web tooling (for example by having dedicated execution servers in production).
  • Our asynchronous job executor has improved support for requeuing failed jobs and for recurring jobs (e.g. daily tasks).
  • OSGi: Full core engine functionality is now available on top of OSGi.  A significant number of additional jars (including for example the human task service, the runtime managers, full persistence, etc.) were "OSGi-fied". Specific extensions and tests showing it in action are available for Apache Karaf and Aries Blueprint (in the droolsjbpm-integration repository).
  • Camel endpoint URIs: A new out-of-the-box service task has been implemented for using Apache Camel to connect a process to the outside world using some of the numerous Camel endpoint URIs. The service task allows you to for example specify how to pass data to an FTP endpoint by configuring properties such as hostname, port, username, payload, etc. for some common endpoints like (S)FTP, File, JMS, XSLT, etc. but you can use virtually any of the available endpoints by defining the URI yourself (http://camel.apache.org/uris.html).

Workbench
  • Form Modeler comes with improved support for adding custom logic to your forms using JavaScript on changes, and support for configurable ComboBox and RadioGroup fields, and simple List types.
  • Asset management: It is now possible to make a repository a "managed repository".  This allows you to split up a repository in multiple branches, one for doing development and on for releasing.  Users can then request various assets to be promoted to the resource branch when ready.  This promotion process, and the linked build and deploy processes, are defined using a BPMN2 process as well and include approval and build tasks.  Check the documentation for more details.

  • Social features, like user profiles (including gravatar pictures), and various event feeds like the most recent assets you worked on, on recent changes by other users.


  • Contributors perspective is a new out-of-the-box report (using the new dashbuilder technology) that gives high-level insight in who is changing what in your repositories.
  • Pluggable workbench:  you can now extend the workbench with your own views, menus, etc. using workbench plugins. Available features includes creation of perspectives via a programmable or a drag and drop interface, create new screens, editors, splashscreens and dynamic menus. 

Wednesday, January 7, 2015

jBPM at DevConf 2015

Maciej reports that he'll be presenting at DevConf 2015 in Brno:
I am happy to announce that a talk and workshop about jBPM 6 has been accepted at DevConf 2015 in Brno.

Talk: jBPM - BPM Swiss knife

During the presentation jBPM will be introduced from the Process Engine & framework perspective.The main goal of the session is to share with the community of developers how they can improve their systems implementations and integrations by using a high level, business oriented methodology that will help to improve the performance of the company. jBPM will help to keep the infrastructural code organized and decoupled from the business knowledge. During the presentation the new APIs and new modules in jBPM version 6 will be introduced for the audience to have a clear spectrum of the tools provided.

Speaker: Maciej Swiderski

Workshop: Get your hands dirty with jBPM 

This is continuation of the presentation of jBPM (jBPM - BPM swiss knife) that introduces to jBPM while this is mainly focused on making use of that knowledge in real cases. On this workshop users will be able to see in action jBPM from both perspectives:
  • as a services when jBPM is used as BPM platform
  • as embedded when jBPM is used as a framework in custom applications
This workshop is intended to give a quick start with jBPM and help users to decide which approach is most suitable for their needs.

Speakers:
Jiri Svitak
Maciej Swiderski
Radovan Synek

Schedule for the complete conference can be found here. See you there!!!

Friday, October 24, 2014

Red Hat Job Opening - Software Sustaining Engineer

We are looking to hire someone to help improve the quality of BRMS and BPM Suite platforms. These are the productised versions of the Drools and jBPM open source projects.

The role will involve improving our test coverage, diagnosis problems, creating reproducers for problems as well as helping fix them. You’ll also be responsible for helping to setup and maintain our continuous integration environment to help streamline the various aspects involved in getting timely high quality releases out.

So if you love Drools and jBPM, and want to help make them even better and even more robust - then this is the job for you :)

The role is remote, so you can be based almost anywhere.

URL to apply now http://jobs.redhat.com/jobs/descriptions/software-engineer-brno-jihomoravsky-kraj-czech-republic-job-1-4759718

Tuesday, October 14, 2014

Partner Workshops in Madrid and London in October

Red Hat is organizing two 3-day workshop for partners about various technologies, including JBoss BPM Suite, FSW and xPaas.  Both will take place in the next few weeks, one in Madrid and one in London, and I'll be attending both.

Important: this event is for Red Hat Channel Partners***, not end users or customers. 

Come spend three days with Red Hat experts and learn about JBoss BPM Suite, Fuse Service Works, and OpenShift Platform-as-a-Service. This three-day master class will include product presentations, roadmaps, industrial use cases, panel discussions, and hands-on lab sessions, as well as the opportunity to talk one-on-one with the experts.
The speakers of the events are: middleware product leaders, principal architects and partner enablement experts. Many of them work as commiters in many open source communities. This is a great chance to meet the worldwide experts!

Madrid:  Tuesday, Oct 21 - Thursday Oct 23 2014
London: Monday, Oct 27 - Wednesday, Oct 29 2014

This is pretty last minute, but if you're interested and (would like to) qualify as Red Hat Partner, ask for an invitation from emea-partner-team@redhat.com


*** Red Hat Partners create an eco-system where they are building solutions or offering services based on existing Red Hat products.  For example, they might be delivering service projects or IT product as ISV partners, or delivering solutions based on Red Hat products as system integrators.  For more info, check out http://www.redhat.com/en/partners

Wednesday, September 10, 2014

jBPM 6.1.0.Final available

The bits have been out for a few weeks now (as we wanted to wait on the new website for the public announcement), but we are now glad to announce that jBPM 6.1 is available and you can find all information about it on our new website.

Some useful links:

Ready to give it a try but not sure how to start?  Take a look at the jbpm-installer chapter.

jBPM 6.1 comes with a ton of smaller improvements and bug fixes (done over the last few months on top of 6.0.1.Final), and also includes some important new features, adding to the foundation delivered as part of jBPM 6.0.

Embedding forms in external applications

Now you can embed and run process/task forms that live inside the Kie-Workbench just adding a JavaScript library to your webapps. Look at the Using forms on client applications section to see the full functionality and usage examples.

Attaching documents to forms

Added new file type to manage upload documents on forms and store them on process variables. Using the Pluggable Variable Persistence you'll be able to create your own Marshalling Strategy and store the document contents on different systems (Database, Alfresco, Google Docs...) or use the default implementation and store them in your File System.

Web Service (SOAP) interface for remote API

The execution server, that is part of the jbpm-console web tooling, now also comes with a Web Service interface (in addition to the existing REST, JMS and Java client interfaces).

Deployment descriptors

Deployment descriptors have been added as an optional, yet powerful way of configuring deployment units - kjars. Deployment descriptors allow to configure (among others)

  • persistence unit names
  • work item handlers
  • event listeners (process, agenda, task)
  • roles (for authorizarion - see section 1.5)

Deployment descriptors can be configured on various levels for enhanced flexibility to allow simple override functionality. Detailed definition of deployment descriptor can be found in the Deployment descriptors section.

Role-based authorization at runtime for process definitions and process instances

The process definition and process instance view in the jbpm console now also take the role-based access control restrictions into account that can be defined on the project the process is defined in. You can limit the visibility of a project (or repository as a whole) by associating some roles with it that are required to be able to see the project (or repository). This can be done when creating the repository, or bu using the command line interface to connect to the execution server. The deployment descriptor (see previous section) also allows you to further customize these roles at deployment time. At runtime, the views will check if the current logged in user has one of the necessary roles to be able to see that process. If not, the user will not see this process or process instance in the process definition or process instance list respectively.

jBPM installer updates

The installer is updated to support:
  • Wildfly 8.1 as application server
  • Eclipse BPMN2 Modeler 1.0.2
  • Eclipse Kepler SR2

jBPM Spring integration

Spring integration has been improved to allow complete configuration of jBPM runtime using Spring XML. That essentially means there are number of factory beans provided as part of droolsjbpm-integration module that significanlty simplifies configuration of jBPM. Moreover it allows various configuration options such as:

  • reply on JTA and entity manager factory
  • rely on JTA and shared entity manager
  • rely on local transactions and entity manager factory
  • rely on local transactions and shared entity manager

Details about spring configuration can be found in this article.

Other

Smaller enhancements also include:
  • Task service (query) improvements, significantly speeding up queries when you have a large numbers of tasks in the database.
  • Various improvements to the asynchronous job executor so it can handle larger loads more easily and can be configured (number of parallel threads executing the jobs, retries, etc.).
  • Ability to configure task administrator groups in a UserTask (similar to how you already could configure individual task administrators).
  • Removed limitation on custom implementations of work item handler, event listeners that had to be placed on global classpath - usually in jbpm-console.war/WEB-INF/lib. With that custom classes can be added as maven dependencies into the project and will be registered on underlying components (ksession).

Data Modeler - round trip and source code preservation

Full round trip between Data modeler and Java source code is now supported. No matter where the Java code was generated (e.g. Eclipse, Data modeller), data modeler will only update the necessary code blocks to maintain the model updated.

 Standardization of the display of tabular data

We have standardized the display of tabular data with a new table widget.
The new table supports the following features:
  • Selection of visible columns
  • Resizable columns
  • Moveable columns

Tuesday, September 9, 2014

jBPM6 Developer Guide

My twitter is exploding with references to this new book for a few days now, so I thought I'd share it with others as well: 

Mariano, Maurcio and Esteban have published a new version of their book a few weeks ago, jBPM6 Developer Guide.  Mariano gives some more information about what to expect from this book on his blog, including an overview of the chapters.

(click on the image to go to the Packt Publishing website)

While I haven't read the book myself yet, I consider Mariano, Mauricio and Esteban all experts in this area !

Monday, September 8, 2014

Interview with Jim Whitehurst on JBoss BPM Suite

Jim Whitehurst, CEO of Red Hat, has given an interview related to BPM in general and Red Hat JBoss BPM Suite more specifically in the run up to BPM Open House 2014.  Red Hat JBoss BPM Suite is the supported Business Process Management platform based on jBPM6.  For more information related to this, check out one of my earlier blogs.


In the interview, Jim talks about why Red Hat is interested in the BPM market, what open source means in this context, and a lot more.  You can listen to the podcast or read the text transcript.