Метод запроса формы Thymeleaf «POST» не поддерживается, Ошибка HTTP = Метод Не разрешен, статус=405

#java #html #spring-boot #spring-mvc #thymeleaf

Вопрос:

Я новичок в Thymeleaf, и здесь я создал форму, используя Thymeleaf, но столкнулся с этой проблемой.
Я прочитал много-много статей, но не нашел никакого решения.

Вот мой класс контроллера ->

 @Controller

public class SavingUser{

@Autowired
private UserRepository userRepository;


@PostMapping("/registerUser")
public ModelAndView user(@ModelAttribute Customer customer, ModelMap model){
    System.out.println("User in registration page..");
    userRepository.save(customer);
    model.addAttribute("saveUser", customer);
    return new ModelAndView("index");
 }
}
 

И вот моя HTML-форма —

   <div id="form">
    <form action="registerUser" th:action="@{/registerUser}"  th:object="${saveUser}" method="POST">
        <br />
        <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
        <label for="name">Your Name:</label><br />
        <input type="text" th:field="*{name}"  placeholder="" /><br />

        <label for="suburb">Your Suburb</label><br />
        <input type="text"  th:field="*{suburb}"  placeholder="" /><br />

        
            <input class="submit" type="submit" value="Submit"  />
            <br /><br />
        </div>
    </form>
</div>
 

Я старался не ставить action=»», но все равно это не сработало.
Любое решение, заранее спасибо.

Комментарии:

1. POST и GET с тем же контекстным путем /registerUser ? Думаю, это не сработает.

2. Упс, этот я добавил напоследок, но даже я удаляю весь запрос Get, по-прежнему показывая ту же ошибку.

3. Вы направили это? spring.io/guides/gs/handling-form-submission . Я сомневаюсь, что у вас есть проблемы с тем, как вы отображаете свою HTML — форму. Можете ли вы показать код контроллера для отображения этой формы?

4. Вот оно, вверху этой страницы. Как вы думаете, ошибка базы данных SQL приведет к такой ошибке ?