春季启动ThymeLeaf和Kotlin – checkbox值没有被传递给控制器​​?

我正在尝试使用Spring Thymeleaf和Kotlin来提供HTML页面。 我希望它能够传递我按下“提交”时选择的HTML页面上的所有值,然后将所有提交内容存储到订单列表中。

class Order(val nameForTheOrder: String, val items: Map, val totalCost: BigDecimal) 

控制器:

 @Controller class OrderController { @Autowired lateinit var orderService: OrderService @RequestMapping("/orderHistory") fun listOfOrders(model: Model) : String { model.addAttribute("orderHistory", orderService.getOrders()) return "orderHistory" } @RequestMapping("/order/{nameForTheOrder}") fun findOrder(@PathVariable("nameForTheOrder") orderId: String, model: Model) : String { model.addAttribute("order", orderService.findOrderbyId(orderId)) return "order" } @RequestMapping(value="/order", method = arrayOf(RequestMethod.POST)) fun addNewOrder(createOrderForm: CreateOrderForm, model: Model) : String { orderService.createOrder(Order( nameForTheOrder = createOrderForm.nameForTheOrder!!, items = createOrderForm.items!!, totalCost = createOrderForm.totalCost!!)) return "redirect:/order/" + createOrderForm.nameForTheOrder } @RequestMapping(value="/order") fun createOrderPage(model: Model) : String { model.addAttribute("orderForm", CreateOrderForm()) return "new-order-form" } } 

index.html的:

       
Name:
Items:
Total Cost:

orderHistory.html:

       

Current Orders

Name for the Order Items

order.html:

       

Order Details

Name for the Order:
Items:
Total Cost:

Hmmm... Looks like that order doesn't exist.

当我启动服务器并加载网页localhost:8086 / order,并提交请求时,我得到:Sun Dec 10 20:10:16 CST 2017有一个意外的错误(type = Bad Request,status = 400)。 object =’createOrderForm’的validation失败。 错误计数:1

如何通过HTML页面上的checkbox映射值,并确保这些值被放置在我的Order对象中?