I am developing spring boot app with Activiti 7. when I submit a request,processInstace start the BPMN flow, trying to assign a task to user and then user can process the request. How to assign a task to a user?
Here is my sample code:
Configuration class:
@override
@Autowired
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(myUserDetailsService());
}
@bean
public UserDetailsService myUserDetailsService() {
InMemoryUserDetailsManager inMemoryUserDetailsManager = new InMemoryUserDetailsManager();
String[][] usersGroupsAndRoles = {
{"user1", "password", "ROLE_ACTIVITI_USER", "GROUP_activitiTeam"},
{"other", "password", "ROLE_ACTIVITI_USER", "GROUP_otherTeam"},
{"admin", "password", "ROLE_ACTIVITI_USER", "GROUP_activitiTeam"},
};
for (String[] user : usersGroupsAndRoles) {
List<String> authoritiesStrings = Arrays.asList(Arrays.copyOfRange(user, 2, user.length));
logger.info("> Registering new user: " + user[0] + " with the following Authorities[" + authoritiesStrings + "]");
inMemoryUserDetailsManager.createUser(new User(user[0], passwordEncoder().encode(user[1]),
authoritiesStrings.stream().map(s -> new SimpleGrantedAuthority(s)).collect(Collectors.toList())));
}
return inMemoryUserDetailsManager;
}
service class:
public ProcessInstance startProcessInstance(AccessRequest request) {
ProcessInstance instance= processRuntime.start(ProcessPayloadBuilder
.start()
.withProcessDefinitionKey(API_ACCESS_PROCESS)
.withVariable(VAR_ACCESS_REQUEST,
request)
.build());
List<org.activiti.engine.task.Task> tasks = taskService.createTaskQuery().processInstanceId(instance.getId()).list();
return instance;
}
Model:
public class AccessRequest {
private String formId;
private String formName;
public String getFormId() {
return formId;
}
public void setFormId(String formId) {
this.formId = formId;
}
public String getFormName() {
return formName;
}
public void setFormName(String formName) {
this.formName = formName;
}
Here is my user task in xml
<userTask id="UserTask_1" activiti:exclusive="true" activiti:assignee="" name="User Task 1">
<incoming>SequenceFlow_3</incoming>
<outgoing>SequenceFlow_5</outgoing>
</userTask>
how to assign the assignee name here?
I am trying to call from postman and run "StartProcessInstance" then claim the task and complete the task.
Ask for and offer help to other Alfresco Process Services and Activiti Users and members of the Alfresco team.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.