import org.activiti.engine.IdentityService; //导入方法依赖的package包/类
@RequestMapping(method=RequestMethod.POST)
public RedirectView submitForm(Model model, @ModelAttribute LoginForm signupForm, BindingResult bindingResult){
model.addAttribute("signupForm", signupForm);
RedirectView redirectView = new RedirectView();
redirectView.setContextRelative(true);
if(bindingResult.hasErrors()) {
signupForm = new LoginForm();
redirectView.setUrl("/ocs/signup");
references(model);
model.addAttribute("signupForm", signupForm);
} else{
loginService.addAccount(signupForm);
IdentityService identityService = processEngine.getIdentityService();
User user = identityService.newUser(signupForm.getUsername());
user.setPassword(signupForm.getPassword());
identityService.saveUser(user);
try{
identityService.saveGroup(identityService.newGroup("payor"));
identityService.saveGroup(identityService.newGroup("shipper"));
identityService.saveGroup(identityService.newGroup("shopper"));
identityService.saveGroup(identityService.newGroup("buyer"));
}catch(Exception e){
System.out.println("Groups already exists....");
}
identityService.createMembership(signupForm.getUsername(), "shopper");
identityService.createMembership(signupForm.getUsername(), "buyer");
identityService.createMembership(signupForm.getUsername(), "payor");
identityService.createMembership(signupForm.getUsername(), "shipper");
redirectView.setUrl("/ocs/login");
}
return redirectView;
}