-
1. Re: swimlane task assignment in process definition not worki
jeffcwang Aug 14, 2007 8:48 PM (in response to jeffcwang)I found a workaround for this problem. It seems that there is a bug here. If you have a task in the start-state and try to assign it via a swimlane, it will create a swimlane instance that always maps to "manager". For example, if the swimlane name is "shipper" and the actor_id is "shipper in the jbpm_swimlane table, after being invoked in the start-state it will create a swinlane_instance that maps from shipper to manager. All subsequence usage of the shipper swimlane will be assigned to manager. The solution was to create a start-state that does nothing but transition to a task-node with the first task (as opposed to using the start-state for the first take) because assignment in task-nodes seems to be working correctly.
-
2. Re: swimlane task assignment in process definition not worki
kukeltje Aug 15, 2007 4:25 AM (in response to jeffcwang)starttasks cannot be assigned via a swimlane.... they are always assigned to the actor who starts the task and this actor is put in the swimlane related to the task.
This is by design. If you think it should be different, look in the jira if there is already an issue for this and vote for it. If not, create one and see what the outcome will be (it can be rejected, but I hope it will not be) -
3. Re: swimlane task assignment in process definition not worki
syngolis Aug 15, 2007 4:38 AM (in response to jeffcwang)A possible way is to define the first node in the process with the initial command. Then you don't have to use a start-state. I think it should fits yor needs.
<process-definition name="ProcessName" initial="NodeName">
I never tried this solution, so correct me if i am wrong. -
4. Re: swimlane task assignment in process definition not worki
syngolis Aug 15, 2007 8:00 AM (in response to jeffcwang)This unit test shows the use of initial.
ProcessDefinition processDefinition = ProcessDefinition.parseXmlString( "<process-definition" + " xmlns='' name='test' initial='task1'>" + " <task-node name='task1'>" + " <task name='task1'>" + " </task>" + " <transition name='' to='end1'></transition>" + " </task-node>" + " <end-state name='end1'></end-state>" + "</process-definition>" ); ProcessInstance processInstance = new ProcessInstance(processDefinition); Token token = processInstance.getRootToken(); assertSame(processDefinition.getNode("task1"), token.getNode());
-
5. Re: swimlane task assignment in process definition not worki
jeffcwang Aug 15, 2007 12:19 PM (in response to jeffcwang)thanks, i'll try that
-
6. Re: swimlane task assignment in process definition not worki
fornachari May 19, 2008 6:01 PM (in response to jeffcwang)I am having the same problem, and I could not fix it doing what jeffcwang said.
I am using JBoss jBPM 3.2.2. When I execute the websale example the swimlane task assignment don't work well.
I am runing the websale using jBPM Console Administrator, when I run the websale example, show in the tasks table "Assigned To manager" for example, but all users can see and modify the open task.
I created a very simple process, in this process There are 4 tasks and I generated a form for each task, like the code below (file forms.xml):<?xml version="1.0" encoding="UTF-8"?> <forms> <form task="criar" form="criar.xhtml"/> <form task="preencher" form="preencher.xhtml"/> <form task="aprovar" form="aprovar.xhtml"/> <form task="relatorio" form="relatorio.xhtml"/> </forms>
Each task was assigned for one user, using swimlane, like the code below (processdefinition.xml):<?xml version="1.0" encoding="UTF-8"?> <process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="request"> <swimlane name="gerente"> <assignment actor-id="admin"></assignment> </swimlane> <swimlane name="funcionario"> <assignment actor-id="manager"></assignment> </swimlane> <swimlane name="usuario"> <assignment actor-id="user"></assignment> </swimlane> <start-state name="Funcionario Envia Documento"> <task name="criar"></task> <transition to="Usuario Assina e Preenche"></transition> </start-state> <task-node name="Usuario Assina e Preenche"> <task swimlane="usuario" name="preencher"></task> <transition to="Gerente Confere e Valida"></transition> </task-node> <task-node name="Gerente Confere e Valida"> <task name="aprovar" swimlane="gerente"></task> <transition to="Funcionario Recebe Documento" name="Aprovado"></transition> <transition to="Usuario Assina e Preenche" name="Nao Aprovado"></transition> </task-node> <task-node name="Funcionario Recebe Documento"> <task name="relatorio" swimlane="funcionario"></task> <transition to="Fim"></transition> </task-node> <end-state name="Fim"></end-state> </process-definition>
Only the first task was not assigned for anyone, like jeffcwang said.
I did not implemented nothig with java, I just did like I said and generate 4 forms: criar.xhtml, preencher.xhtml, aprovar.xhtml and relatorio.xhtml. Only xml and xhtml files.
The process work well in the jBPM Console Admin but the swimlane task assignment don'tt work. Like in the websale example, in the tasks table appear, for example, "Assigned To admin", but any kind of user can modify the task.
Any idea? I am very new with jBPM, am I forgeting something? I need to do some java implementation in this case, like a actionhandler?
Thank you in advance! -
7. Re: swimlane task assignment in process definition not worki
kukeltje May 19, 2008 6:31 PM (in response to jeffcwang)known issue in the current webconsole..... afaik it is fixed in the cvs head version
-
8. Re: swimlane task assignment in process definition not worki
fornachari May 20, 2008 8:40 AM (in response to jeffcwang)"kukeltje" wrote:
known issue in the current webconsole..... afaik it is fixed in the cvs head version
Sorry kukeltje, but I am using the last jBPM version, the 3.2.2 version, as you can see here http://www.jboss.org/jbossjbpm/jbpm_downloads/.
I didn't understand very well you message.
Any other idea? -
9. Re: swimlane task assignment in process definition not worki
varundoda May 20, 2008 8:57 AM (in response to jeffcwang)I am having the same problem.
kukeltje, can you explain what solution you have provided? -
10. Re: swimlane task assignment in process definition not worki
fornachari May 20, 2008 3:38 PM (in response to jeffcwang)
I tried all ways to assign an actor to a task, not only using swimlanes, but directely from the task selecting a task-node-> then selecting the task in the properties menu-> then clicking in "assignment" and selecting "actor" and entering with a valid user, but didn't work too.
Please, any help? Any idea?
I need to do this, and I think that is a thing very simple in jBPM, this should be working!
Thank in advance! -
11. Re: swimlane task assignment in process definition not worki
fornachari May 20, 2008 4:53 PM (in response to jeffcwang)SOLUTION HERE:
http://jira.jboss.com/jira/browse/JBPM-1022?actionOrder=asc
Read Sebastian's comment:
I might be wrong,
but isn't it possible to easily fix it by changing the line in tasks.xhtml :
<j4j:listTasks includeEnded="true" target="#{tasks}"/>
by this one:
<j4j:listTasksForActor actorId="#{request.remoteUser}" target="#{tasks}"/>
?
I tried this and it's work!
Thank to all!