I have now installed and I am running the latest release of jbpm-jpdl (i.e. an installation through jbpm-jpdl-3.2.1). I have the following process definition:
<process-definition xmlns="" name="sequence"> <start-state name="start"> <task name="start-task"> <assignment expression="user(manager)"></assignment> <controller> <variable name="employee" access="read,write,required"></variable> </controller> </task> <transition name="t1" to="task1"></transition> </start-state> <task-node name="task1"> <task name="task1"> <assignment actor-id="manager"></assignment> </task> <transition name="t2" to="task2"></transition> </task-node> <task-node name="task2"> <task name="task2a"> <assignment expression="previous"></assignment> </task> <task name="task2b"> <assignment expression="user(manager)"></assignment> </task> <transition name="t3" to="end1"></transition> </task-node> <end-state name="end1"></end-state> </process-definition>
Every task in this process is assigned to a specific user namely user or manager (who are two of the predefined users coming with the installation). However, when executing the process everyone is able to execute everything, i.e. every user defined in the system can both start and end any task, even tasks which have not been assigned to him. Is this a bug or am I thinking wrongly?
A second question I have is related to the data flow in a process and the forms generation. In the previous version I run (i.e. 3.1.2) task data was defined through the controller construct and during run-time forms were automatically generated in the web-console for displaying and gathering instance specific data. This does not seem to be the case any longer. My impression is that now in order to enter or display any data, one needs to define all the forms necessary for doing it. Is this correct? (It is of course important to be able to define your own forms, but when developing and testing the logic of a process it is nice to also have the automatic generated forms.) In the process definition above I have defined a task controller, where the variable employee is required. When executing the process as manager, I can see the variable in the Variables View in the web interface but I can not give it any value (probably because I have not yet defined any form for it) However (and it feels strange), I can end the task even if this variable is required and I have not entered any value for it. Again, am I thinking wrongly or is this a bug?
Finally, from the manager's interface I was able to define new users, groups and memberships. However, I can not use them. When trying to login as one of the new users I get the error message
Login failed. Invalid user name or password.The new users do not appear in the login window's table but they seem to have been saved in the database (at least I am able to see them when going back to manager's Identities view). How do I get the user changes through? (I think I saw somewhere instructions on how to delete the login table from the login window, but I can not find back to there.) Also, is it possible to change users' data, such as email address, from this interface or do I need to remove and redefine the user in order to do this?
Grateful for any feedback.
Kind regards, Petia