- What did you change in your process? Could it be that you changed a HumanTask to be a Subprocess?
- Did you deploy your new artifact with a different version?
I didn't deploy new artifact.
And I am pretty sure I didn't change from HumanTask to a Subprocess.
I thought jBPM would arrange a task for the user in this way:
- jBPM loads the process from the jar file
- jBPM loads the current task info from the table 'NodeInstanceLog'
- jBPM tries to cast a class found in the jar file to the type read from the table NodeInstanceLog
But in the DB, the type of the task which causes the error is "HumanTask".
How does it work ?
Well, NodeInstanceLog is an audit table.
jBPM will get the running process information from ProcessInstanceInfo (which is basically a serialized object).
If you changed the process and it conflicts the already running process, I think you should deploy it with a new version.
Well, now I think I know what happened:
- I changed some task of the new process from Human Task to Sub Process (and I forgot it :-) )
- I deployed the new process with the same version of the old one (thinking it was a smart thing :-) )
- The new process is incompatible with the instance serialized in the column processInstanceByteArray (which I will analize sooner or later :-) )
I will change the version number when I deploy a new version of a process.
Thanks a lot
I have a same problem as discussed above but in my case, column processInstanceByteArray is auto updating with the new process definition (after process modification)
Can anyone tell me why this is happening?