Thank you for your answer. I really understand the differences between BPEL and jbpm and Bpel is my choice since I want to get Web services orchestration.
The problem is that it seems to me that jbpm is much more developped and many of the features :::
- user task assignaments
- web console in order to know in where we are in the process
are only developped for jbpm..
I also wonder which functions of jbpm can I reuse ?
Any help on that ? Any documentation on that ?
You are thinking in terms of the jBPM object model. In BPEL the concept of process instance is rather abstract and the token does not exist.
Consider the ATM example. The process instance sits waiting for an ATM to send a log-on message. This might take an arbitrarily long time, hours, perhaps days. During this time the process is stopped and the process objects are stored in the database. To resume the process, you send a log-on message to the front end web service and provide the ticket number assigned to the ATM.
Internally, the BPEL runtime will take the ticket number, "correlate" it to a dormant token, load it from the database and signal it for you. There are some other actions the engine must perform, such as assigning the message data to the process variables, ensuring the correlation constraint and registering an outstanding request in case the request expects a response.
I cannot think of a reason why you would want to perform these actions yourself, so why do you need direct access to the token? Take into account that one of the selling points of BPEL is its being a standard. If you dive into a particular implementation, you won't be able to switch to a different implementation easily (should you ever want to :-)
Monitoring is definitely a feature we need to add. In the recently released jBPM BPEL 1.1.Beta2, you can deploy jbpm.war alongside jbpm-bpel.sar and get a running jBPM console. See BPEL-196.
You can deploy jPDL processes there, see BPEL processes alongside jPDL processes in the process definitions page and see the running instances. The instance detail page breaks because the BPEL processes have no image.
The reason why we are not fixing this issue is that jBPM 3.2 will feature a completely new console with reusable JSF components. David Lloyd, a new member of jBPM team, is taking care of that.
Thanks Alex for your answer!
It was very helpful. But as allways - I have more questions:
OK - You talked about ticketnumbers.
OK that's the way I wanted to work anyway. But isn't there allready a ticketnumber (processcontext) saved in database?
Lets describe it by an example:
I have started a process like a "bulk purchase".
I have delayed this process - maybe because I'm not allowed to do any tasks further (like commiting an order because it exeeds an special amount of money).
As a next point my supervisor gets an information to continue the process and commit the order.
So heres the point.
I want to create (use) a unique ticket id and store it in the (the same or another) database. In my example my superviser would use this ticket id to connect to the webservice and continue the process with the another authorisation access.
Easy isn't it?
So and now the BIG question I'm hanging arround:
Is something like this (unique ticket id) that I can access via my BPEL-Processmodelling or my Implementations in my "back" to work like in the example?
I know there was something like this in jBPM (process instances?)
Every help is welcome!
By the way: Do you know when beta2 will be released?
I have checked out the cvs - it seems to be a lot of changes...
Do I have to recreate my internal project to use the new extension?
It is already released ;)
Take a look at the announcement
I was looking 5 hours ago at the same place!
They've changed the entrance!
OK - Now I have to test new stuff...
eMundo GmbH - Germany
I'm working on a BPEL Processintegration Framework to achieve my Bachelor grade.
For more information see Agilpro
I am not sure what you mean in your previous post:
But isn't there allready a ticketnumber (processcontext) saved in database?
I think you mean "why do we obtain and pass around a ticket number if jbpm already provides a process instance/token id?", is that right?
I think my question is allready run through this point. I wanna know how to access it :-)
Or another option to do that stuff I ment to do.
Thanks for your fast answer!