]
Ronald van Kuijk commented on JBPM-395:
---------------------------------------
can you update the affected versions with the one you tested with... then I'll work on
this next week
SwimlaneInstance PooledActor assignment bug (not re-assignment
issue)
---------------------------------------------------------------------
Key: JBPM-395
URL:
http://jira.jboss.com/jira/browse/JBPM-395
Project: JBoss jBPM
Issue Type: Bug
Components: Core Engine
Affects Versions: jBPM 3.0.1
Environment: JDK 1.5, Postgresql, JBoss 4.0.2
Reporter: Britt Miner
Assigned To: Tom Baeyens
Initializing swimlaneInstances at process creation (or perhaps any time prior to creation
of an associated task) will persist any configured actorId to the database, but configured
PooledActors are not persisted. The AssignmentHandler functionality seems to work
fine--the newly initialized swimlaneInstance has both actorId and pooledActors set
correctly; however, the pooledActors will not be persisted. Allowing the
swimlaneInstance to be initialized at creation of a related task does result in both
actorId and pooledActors being properly persisted.
This issue is similar, though not identical, to
http://jira.jboss.com/jira/browse/JBPM-375 and
http://jira.jboss.com/jira/browse/JBPM-378
which are both related to swimlane assignment issues.
Why initialize swimlaneInstances at process creation? So that swimlane assignments can
be made based on the initiator of the process (responsibilities broken down by regional
groups, etc.), and so that those assignments are available for reporting/forcasting
purposes.
This is the code fragment used to initialize the swimlanes:
...
Map swimlanes = processDefinition.getTaskMgmtDefinition().getSwimlanes();
Iterator itr = swimlanes.keySet().iterator();
while(itr.hasNext()) {
Swimlane swimlane = (Swimlane)swimlanes.get(itr.next());
SwimlaneInstance swi =
pi.getTaskMgmtInstance().getInitializedSwimlaneInstance(new Execution
Context(pi.getRootToken()), swimlane);
//at this point, swi contains both actors and PooledActors that were specified in
configuration and
populated with an appropriate AssignmentHandler
}
graphSession.saveProcessInstance(pi);
jbpmSession.commitTransaction();
Thanks,
Britt
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: