I looking at jBPM as a replacement for statefull business processes in Weblogic Integration (WLI). WLI has terrible support for incremental development for statefull business processes. They basically serialize the entire process object into a blob and shove it into the database.
One of attractive things about jBPM is it's integration with hibernate. My understanding is that I should be able to attach an object that can be saved with Hibernate as long as the following three things are true:
The object can be saved with Hibernate (duh).
The configuration files for jBPM have the class added to them.).
The object is indexed by a string or a long.).
This would allow me to do the following:
Have running process instances.
Shut down the server.
Update the database and mapping files for the attached business objects.
Restart the server.
Have the same running process instances.
My problem is that I can't seem to find any code that actually would let me do that. The classes that the CustomVariableLongIdDbTest.java and CustomVariableStringIdDbTest.java test cases use seem to have the exact same structure.
Both the CustomStringClass and the CustomLongClass (which are stored by the unit test) seem the same to me with a long id and a string name.
So if I want to attach a Hibernate object, say User, indexed by userid (a string) how would I do that? And if I want to attach another object by a long id that I provide, say Quote, indexed by quoteId how would I do that?