Java 字段选择错误:自动对焦选择器绑定
为什么th:field=*{platform}不起作用 我曾尝试添加th:field=*{platformId},但它仍然存在 这就是错误所在Java 字段选择错误:自动对焦选择器绑定,java,hibernate,spring-boot,jpa,thymeleaf,Java,Hibernate,Spring Boot,Jpa,Thymeleaf,为什么th:field=*{platform}不起作用 我曾尝试添加th:field=*{platformId},但它仍然存在 这就是错误所在 org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'org.thymeleaf.spring5.processor.SpringSelectFieldTagProcessor' (template: "silicon" - l
org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'org.thymeleaf.spring5.processor.SpringSelectFieldTagProcessor' (template: "silicon" - line 343, col 47)
这是我的控制器
@PostMapping({"/admin/siliconAdd"})
public String addOrEditSilicon(@Valid @ModelAttribute(name="silicon") Silicon silicon,BindingResult placeValidation,
final RedirectAttributes redirectAttributes,HttpServletRequest request,Model model) {
User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
LOG.info(silicon.toString());
if(silicon.getPlatform().getPlatformId() == null) {
silicon.setPlatform(null);
}else {
silicon.setPlatform(platformServiceImpl.getOne(silicon.getPlatform().getPlatformId()));
}
String messageString = null;
Date localDateToday = new Date();
try {
if(silicon.getId() == null) {
messageString = "inserted";
silicon.setDateAdmission(localDateToday);
silicon.setStatusSilicon("AVAILABLE");
silicon.setUserOwner(userServiceImpl.getOne(user.getUsername()));
if(silicon.getUserRequest() != null) {
silicon.setStatusSilicon("ASSIGNED");
siliconServiceImpl.assignSiliconToUser(silicon.getUserRequest(), silicon.getId());
}
}else {
messageString = "updated";
}
Silicon siliconAddOrEdit = siliconServiceImpl.addOne(silicon);
model.addAttribute("silicons",siliconServiceImpl.getAll());
redirectAttributes.addFlashAttribute("success",messageString);
return "redirect:/admin/step2/" + siliconAddOrEdit.getPlatform().getPlatformId();
}catch(Exception ex) {
redirectAttributes.addFlashAttribute("error",messageString);
LOG.info(ex.toString());
return "redirect:/admin/silicon";
}
}
这是百里香的部分
<select class="custom-select" th:field="*{platform}" id="platformCurrent">
<option value="">--Select Platform to Assign--</option>
<option th:each="platform : ${platforms}" th:value="${platform.platformId}" th:utext="${platform.name}"></option>
</select>
--选择要分配的平台--
我如何解决这个问题
我想在不查阅数据库的情况下获得整个平台你能试试这个吗
<select class="custom-select" id="platformCurrent" name="platformCurrent">
<optgroup label="">
<option th:each="platform : ${platforms}" th:value="${platform.platformId}"
th:text="${platform.name}"></option>
</optgroup>
</select>
此ThymileAF页面的名称是什么?它被称为silicon在发布数据之前,您是否有GetMapping
转到silicon
页面?