Saya memiliki 2 pengontrol:
a)
@Override
@RequestMapping(value = "/portal/form.html", method = RequestMethod.GET)
@Transactional
public String form(final Message message, final Model model) {
return "portal/form";
}
b)
@Override
@RequestMapping(value = "/portal/form.html", method = RequestMethod.POST)
@Transactional
@PreAuthorize("#message.id!=null ? hasPermission(#message, 'WRITE') : hasRole('ROLE_ADMIN')")
public String form(@Valid final Message message, final Model model) {
if (message.getId() == null) {
someService.save(message);
AclManager.create(message);
} else {
someService.update(message);
AclManager.update(message);
}
return "redirect:result.html";
}
Sebelum saya memberi anotasi keamanan di Kontroler "b" semuanya baik-baik saja. Sekarang ketika saya pergi ke halaman pengontrol "a" dan saya mengisi formulir, klik tombol yang menyebabkan pengontrol "b" dan saya mendapatkan "Status HTTP 405 - Metode permintaan 'POST' tidak didukung". Mengapa ini terjadi dan bagaimana cara memperbaikinya?
UPD: Saya membantu menambahkan pengontrol login RequestMethod.POST