If you want to execute the BPEL, you can take a look at the RiftSaw project. http://www.jboss.org/riftsaw.
AFAIK, jBPM 5.0 doesn't support the BPEL, and we don't have any facilities that translate the BPEL into BPMN yet.
Well technicaly you don't need a translator to execute BPEL over the jBPM5 engine, we need to only implement the BPEL node behaviors.
First of all, thank You for the answers!
But what if i really have to create BPEL-to-jBPM5 translator? Let's say, that there is some simple process, like:
(1) you ask a question
(2) the person, who you asked receives the question
(3) that person answers
(4) if the answer is correct, --> "goto" (5) else "goto" (1)
I can imagine, that BPEL and jBPM5 can have almost the same processes. Except the structure of languages (as far as i know, BPEL's structure differs from jBPM5's).
So.. should i try to create some sort of parser to execute BPEL on jBPM5 or i should use something else?
And also, Mauricio.. what about theese nodes You were speaking of? (i'm sorry for the stupid questions.. =( ) What are the differences between the node implementation methods in BPEL and jBPM5?
If you have a simple process like the one you mention it's easier to re draw it in BPMN2. Don't waste time in parsers.. that probably will be a mistake.. because BPEL and BPMN2 are two different languages there will be always semantic impedances between the words (activities/nodes) in the language.
You see.. main idea is to try to do this.. not just to choose the easy way.. (or, maybe, i've understood you incorrectly about "re-draw" thing..?)
Now i know, that these two languages do differ from each other..
Let's say, that there is a simple activity made in BPEL. I take this activity and translate it into BPMN/XPDL (this activity from BPEL now will be a jBPM node (if i'm not mistaken with terminology) ). Then i try to write a few basic activities like Invoke, Receive , Reply (just these.. i'm not even thinking about taking on the whole jBPM functionality..). And now..the main thing.. I do not want just to create some java code (for instance) that "takes BPEL diagramm and just "translates" it into jBPM diagramm.. The point is to make some of the functionality work for real.. that is what i tried to tell..
In theory it should be possible to translate a BPEL process into a BPMN2 process so you can execute it on jBPM5. There should probably be a 1-to-1 mapping of BPEL elements to their corresponding BPMN2 construct. There has been work to translate BPMN2 to BPEL, not sure their has been a lot of work in the other direction. But I think it shouldn't be too difficult with an XSLT transformation for example.
I would suggest definitely searching the internet to check whether no-one has already done this work for you, as I imagine someone might, as it could be useful in a broader context as well.
Is the inference we cannot execute a BPEL process directly in JBPM5 Process engine , we need to convert BPEL process to BPMN process to execute?
Yes, jBPM5 doesn't support native BPEL execution, only BPMN2.