here's the idea we had in mind:
create a SLSB that takes commands and then these commands are executed within a JbpmContext that is created in the SLSB.
a set of predefined commands include TokenSignalCommand, TaskInstanceEnd command, ...
then the SLSB would be exposed over a webservice. don't know yet how that would look like. especially how the commands themselves would be mapped. with JAXB ?
there are versions of the SLSB and the commands in HEAD of cvs. please, take a look there and comment on them. as we would like to make this a collaborative effort and make sure that as much requirements as possible are met with our design.
I'm working on one or at least will be on short notice. Heck, I even might have complete running functionality before the end of the month.
Do NOT use the SLSB, no need (imo) and it makes things NOT work on Tomcat. There is a company that wants a webservice frontend, but they just run Tomcat. Instead of using the/a SLSB, the commandexecutor can be used (not the thread, just the class). I just tried it and it works.
The mapping of the commands (creating an xsd for this) is a jira issue. The commands can be realy simple Most calls can even be just rpc type calls, very easy to generate.
Starting a process (just by name or with a version) was implemented in 1 minute (hour is more like it ;-) ) after I got the basics running. Other plain rpc type calls for ending a task (with or without variables, with or without a transitionname) is also not difficult. The thing is that there is no method overloading in wsdl (at least will not be supported in future versions afaik), so for starting a process I have two methods, startProcessLatestVersion (..) and startProcessSpecificVersion(..). Notr beautiful, since with the end task there will be numerous combinations (see also the jira, starting from http://jira.jboss.com/jira/browse/JBPM-718)
More complex things will be retrieving a tasklist, logging etc...
My preference is that someone defines a nice XSD and we map that to the command objects, extending those where needed. I'm not a fan of generating xsd's from java (although it did work with JBossWS generated wsdl/webservice and an the eclipse webservice explorer)