【发布时间】:2021-09-20 11:18:18
【问题描述】:
我正在尝试预订一张桌子。但是当我按下书桌按钮时,我得到了一个错误。错误是不支持请求方法“POST”。我以前在其他类似项目中做过,它很有效。我认为问题出在 HTML 文件中,但我找不到。我该如何解决? 这是我的实体类
@Entity
@Table(name = "reservation")
public class Reservation {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private int id;
@Column(name = "arrival_date")
private String arrivalDate;
@Column(name = "arrival_time")
private String arrivalTime;
@Column(name = "num_of_person")
private String numOfPerson;
@Column(name = "first_name")
private String firstName;
@Column(name = "email")
private String email;
@Column(name = "phone_number")
private String phoneNumber;
这是我的控制器类
@Controller
public class RestaurantController {
@Autowired
private ReservationService reservationService;
@InitBinder
public void init(WebDataBinder binder) {
StringTrimmerEditor editor = new StringTrimmerEditor(true);
binder.registerCustomEditor(StringTrimmerEditor.class, editor);
}
@GetMapping("/")
public String home() {
return "index";
}
@GetMapping("/reservation")
public String reservation(Model model) {
model.addAttribute("newRes", new Reservation());
return "reservation";
}
@PostMapping("/save-reservation")
public String proceed(@Valid @ModelAttribute("newRes") Reservation reservation, BindingResult result, Model model) {
reservationService.saveReservation(reservation);
return "redirect:/reservation";
}
}
这是我的 HTML 文件
<form id="contactForm" th:action="@{/save-reservation}" th:object="${newRes}" method="post" >
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
<div class="row">
<div class="col-md-6">
<h3>Book a table</h3>
<div class="col-md-12">
<div class="form-group">
<input id="input_date" class="datepicker picker__input form-control" th:field="*{arrivalDate}" type="text" value="" equired data-error="Please enter Date">
<div class="help-block with-errors"></div>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input id="input_time" class="time form-control picker__input" th:field="*{arrivalTime}" required data-error="Please enter time">
<div class="help-block with-errors"></div>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<select class="custom-select d-block form-control" id="person" th:field="*{numOfPerson}" required data-error="Please select Person">
<option value="0">Select Person*</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select>
<div class="help-block with-errors"></div>
</div>
</div>
</div>
<div class="col-md-6">
<h3>Contact Details</h3>
<div class="col-md-12">
<div class="form-group">
<input type="text" class="form-control" id="name" th:field="*{firstName}" placeholder="Your Name" required data-error="Boş Bırakılamaz">
<div class="help-block with-errors"></div>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input type="text" placeholder="Your Email" id="email" class="form-control" th:field="*{email}" required data-error="Boş Bırakılamaz">
<div class="help-block with-errors"></div>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input type="text" placeholder="Your Numbar" id="phone" class="form-control" th:field="*{phoneNumber}" required data-error="Boş Bırakılamaz">
<div class="help-block with-errors"></div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="submit-button text-center">
<button class="btn btn-common" id="submit" type="submit">Book Table</button>
【问题讨论】:
-
请将错误/堆栈跟踪添加到您的问题中。
-
错误是不支持请求方法'POST'。
-
这不能回答我的问题。请在您的问题中添加完整的错误和/堆栈跟踪。那只是一个 sn-p(第一行左右)。
-
你的意思是这样吗?当我按下 Book Table 按钮 .w.s.m.s.DefaultHandlerExceptionResolver :已解决 [org.springframework.web.HttpRequestMethodNotSupportedException:不支持请求方法“POST”]
标签: java spring spring-boot spring-mvc web-applications