[jboss-dev-forums] [Design of JBoss jBPM] - Re: Want to contribute Commands, where to start?
tom.baeyens@jboss.com
do-not-reply at jboss.com
Mon Aug 21 06:33:13 EDT 2006
"camunda" wrote : So I hope we will have much fun together in the future :-)
|
I'm sure we'll have fun !
First of all, the current command and slsb are designed by jim rigsbee. i only had a quick look at it. Seems a good start, but it's only one man's ideas and use cases. It's up to us to give it more review and model it to cover the most possible use cases. IIRC, Jim doesn't have much time to contribute any more, but i think he will be willing to explain the ideas behind his designs when we ask him.
"camunda" wrote :
| - Why do they call "JbpmContext context = JbpmContext.getCurrentJbpmContext();" in the execute method? Shouldn't that be hidden in a Command superclass? Or is the
| JbpmContext.getCurrentJbpmContext() usable in any environment? Also it seems to be deprectated. Sorry if this is a silly question, but I worked with a different use of the context in our bean the last year.
|
JbpmContext is indeed usable in any environment. It's a combination of a transaction scope demarcation and a services abstraction (see JbpmContext.getServices()). Services can have different implementations in different environments.
I just had only a quick look, but i think the best would be to add the JbpmContext as a parameter in the execute method signature.
"camunda" wrote : - I don't know where are the constants "public static final String CMD_START_PROCESS = "jbpmStart";" in the Command-Interface are for. Any hints?
|
nope. me neither. (didn't look yet) if we can't figure it out in the next few weeks, we can always remove those.
"camunda" wrote : - Why are there Hibernate mappings for the commands. In which circumstances are they persistent? I thought, I pass them to the CommandService and get a answer, why Hibernate?
|
The idea is that inside of jbpm runtime operation, you use the message service. That is an abstraction of an asynchronous message service like JMS. For environments where you don't have JMS available, i have written a minimal, non-optimal implementation of a POJO message service based on persisting messages in the database. Those will only be used in a J2SE environment where JMS is not available.
"camunda" wrote : - How exactly are the Commands working. I think I have also seen them used internally in jbpm? Wheres a good starting point?
|
Main use case internally is the asynchronous continuations. Where a command is send to continue execution of a process asynchronously after a token entered a node (and before it is executed).
"camunda" wrote : Or is there some documentation or other Threads to read first? I think I have no full understanding how the commands should work. I thought of pure Java Command objects, send to [JBoss / Webapp / JMS / ...] and get back a result (if synchronous).
|
i have described my initial ideas behind the command pattern design in a wiki page: http://wiki.jboss.org/wiki/Wiki.jsp?page=JbpmCommands
"camunda" wrote : In a second step I want to change the remaining tk4jbpm (the Swing Admin-Client mainly) to work with these commands and the CommandService. A example screenshot for that Swing Admin-Client can be found on our homepage: http://www.camunda.com/toolkit_for_jbpm/tk-jbpm-screenshots.html
|
and will you contribute the swing client as well :-) ?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3966412#3966412
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3966412
More information about the jboss-dev-forums
mailing list