Java 字段选择错误:自动对焦选择器绑定

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

为什么th:field=*{platform}不起作用

我曾尝试添加th:field=*{platformId},但它仍然存在

这就是错误所在

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
页面?