首页 > 解决方案 > 错误:bean 名称“buildingID”的 BindingResult 和普通目标对象都不能用作请求属性

问题描述

我正在尝试在 Spring Boot 中将表单保存到数据库中。我有我的代码从一个数据库中提取以创建一个下拉表单以从中进行选择,然后将两个输入框添加到其中以输入到另一个表中。除了表格的最后一部分,一切似乎都很好。它似乎没有找到 buildingname 或 buildingadd。

这是我的 html(百里香叶):

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:th="http://www.thymeleaf.org"
    xmlns:sec="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1">
<title>Building Assignment Form</title>
</head>
<body>
    
    <div>
    
    <form action="#" th:action="@{/assign}" method="post" th:objects="${BuildingAssignments}">
    <label>Select Employee</label>
        <select name="Employee">
            <option value="">Select Employee</option>
            <option
            th:each="Employee : ${listEmployees}"
            th:value="${Employee.employeenum}"
            th:text="${Employee.firstname}">        
            </option>
        </select><br/>
    
    <label>Building Name</Label>    
    <input type="text" th:field="*{buildingname}"/><br/>
    
    <label>Address</label>
    <input type="text" th:field="*{buildingadd}"/><br/> 
    
    <button type="submit">Assign Location</button>
    
    </form>

这是我的控制器:

@Controller
public class BuildingAssignmentController {

    @Autowired
    private BuildingRepository BuildingRepository;
    
    @Autowired
    private EmployeeService employeeService;

    
    //assign building locations
    @GetMapping("/assign")
    public String viewAssignPage(Model model) {
        model.addAttribute("listEmployees", employeeService.getAllEmployees());
        model.addAttribute("BuildingAssignments", new BuildingAssignments());
        //model.addAttribute("assignbuildings", AssignmentService.listAssignments());
        return "assignloc";
        
    }
    
    @RequestMapping(value = "/assign", method = RequestMethod.PUT) 
    public String givebuildingassignmentinfo(Model model){
    model.addAttribute("BuildingAssignments", new BuildingAssignments());
    return "assignloc";
    }
    

    @PostMapping(value = "/assign")
    public BuildingAssignments saveBuilding(@RequestBody BuildingAssignments BuildingAssignments) {
        //save assignment to database
        BuildingAssignments dest =BuildingRepository.saveAndFlush(BuildingAssignments);
        return dest;
        //return "redirect:/assign";
    }

这是我的实体类:

@Entity
@Table(name="building_locations")
public class BuildingAssignments {

    @Id
    @Column(name="employee_number")
    public int employeenumb;
    @Column(name="buildingID")
    public String buildingname;
    @Column(name="building_address")
    public String buildingadd;
    
    public int getEmployeenumb() {
        return employeenumb;
    }
    public void setEmployeenumb(int employeenumb) {
        this.employeenumb = employeenumb;
    }
    public String getBuildingname() {
        return buildingname;
    }
    public void setBuildingname(String buildingname) {
        this.buildingname = buildingname;
    }
    public String getBuildingadd() {
        return buildingadd;
    }
    public void setBuildingadd(String buildingadd) {
        this.buildingadd = buildingadd;
    }
    
@Override
public String toString() {
    return "BuildingAssignments [employeenumb=" + employeenumb + ", buildingname=" + buildingname + ", buildingadd="
            + buildingadd + "]";
}

这是我的服务

@Service
public interface AssignmentService {
    
    public static final BuildingRepository buildingrepo = null;

    
    List<BuildingAssignments> listAssignments();
    
    public static void SaveBuildingAssignment(BuildingAssignments buildassign) {
        buildingrepo.save(buildassign);
        }

    public static Object SaveBuildingAssignment() {
        // TODO Auto-generated method stub
        return null;
    }
}   

及服务实施

@Service
public class AssignmentServiceImpl implements AssignmentService{

    @Override
    public List<BuildingAssignments> listAssignments() {
        // TODO Auto-generated method stub
        return null;
    }

我对编码还是很陌生。知道为什么我可能会收到此错误吗?

提前致谢!

标签: mysqldatabasespring-bootformsthymeleaf

解决方案


推荐阅读