大家。我有两个应用程序。第一个是 CRUD spring boot JPA Web mvc 应用程序。它与这些代码一起工作得很好。(通过存储库数据库)
@RequestMapping(value = { "/newUser" }, method = RequestMethod.GET)
public String newUser(ModelMap model) {
User user = new User();
List<UserProfile> roles = userProfileRepository.findAll();
model.addAttribute("user", user);
model.addAttribute("allRoles", roles);
return "registration";
}
@RequestMapping(value = { "/newUser" }, method = RequestMethod.POST)
public String saveUser(@Valid User user, BindingResult result,
ModelMap model) {
if (result.hasErrors()) {
List<UserProfile> roles = userProfileRepository.findAll();
model.addAttribute("allRoles", roles);
model.addAttribute("user", user);
return "registration";
}
userRepository.save(user);
return "registrationsuccess";
}
Registration.html 的一部分是
<select class="form-control input-sm" id="userProfiles" name="userProfiles" multiple="multiple" th:required="true">
<option th:each="role : ${allRoles}"
th:value="${{role}}"
th:text="${role.type}"
th:selected="${role.id == 1}"
>Role
</option>
</select>
上面的代码工作正常。
第二个应用程序是基于resttemplate的spring boot
@RequestMapping(value = { "/newUser" }, method = RequestMethod.GET)
public String newUser(ModelMap model) {
User user = new User();
RestTemplate restTemplate = new RestTemplate();
List<UserProfile> userProfiles = Arrays.asList(restTemplate.getForObject("http://localhost:8080/api/roles", UserProfile[].class));
ArrayList<UserProfile> roles = new ArrayList<>(userProfiles);
model.addAttribute("user", user);
model.addAttribute("allRoles", roles);
return "registration";
}
多重选择形式与第一个应用程序相同(相同)但是第二个应用程序在调用registration.html时抛出异常
附言。我已经通过 PostMan 测试了所有方法(PUT、GET、DELETE 和 POST)。而且效果很好。我不明白百里香的不同行为..
米脂
撒科打诨
相关分类