Как разрешить методы запроса 'POST' не поддерживается? - PullRequest
0 голосов
/ 30 апреля 2019

Я хочу создать страницу быстрой регистрации, которая будет размещена в нижнем колонтитуле, когда я отправляю поле. Она показывает ошибку "Метод запроса POST не поддерживается".Кто-то, пожалуйста, помогите мне выйти из этой ошибки.

Я изменил атрибут формы commandName как modelAttribute, но все же ошибка существует.

  1. Это фронт jspконец.
 <%@ tag body-content="empty" trimDirectiveWhitespaces="true"%>
    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
    <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <c:url value="/setSubscribe" var="subscribe"></c:url> 
    <form:form action="${subscribe}" method="post" modelAttribute="subscribeForm">
    <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
      <label class="form-check-label radio-inline"> 
          <input type="radio"  class="form-check-input" value="gender" name="gender"  value="Male"/> Male
      </label>
      <label class="form-check-label radio-inline"> 
          <input type="radio" class="form-check-input" value="gender" name="gender"  value="Female"/> Female
      </label>    
      <br></br>
      <div class="row">
          <div class="col-sm-3">
              <input  class="form-control" name="firstName"  placeholder="First Name"></input> 
          </div>
          <div class="col-sm-3">
              <input class="form-control" name="lastName" placeholder="Last Name"></input>
          </div>
          <div class="col-sm-3">
              <input class="form-control" name="email"  placeholder="Your Email Address"></input>
          </div>
          <div class="col-sm-3">
              <button type="submit" class="btn btn-primary">SUBSCRIBE</button>
          </div>
      </div>
    </form:form>
Вот мой контроллер.
@RequestMapping(value = "/setSubscribe", method = RequestMethod.POST)
  private String doSubscribe(@ModelAttribute("subscribeForm") final SubscribeForm form)
  {
      final RegisterData registerData = new RegisterData();
      registerData.setFirstName(form.getFirstName());
      registerData.setLastName(form.getLastName());
      registerData.setSex(form.getGender());
      registerData.setLogin(form.getEmail());

      final CerCustomerFacadeImpl customerFacadeImpl = new CerCustomerFacadeImpl();
      try
      {
          customerFacadeImpl.newCerRegister(registerData, true);
      }
      catch (final Exception e)
      {
          e.printStackTrace();
      }
      return "";
  }

Он должен вести себя в соответствии с бизнесом, который был упомянут в контроллере.

1 Ответ

0 голосов
/ 30 апреля 2019

Напишите ваш метод контроллера с аннотацией @ResponseBody и использует свойство аннотации @RequestMapping следующим образом:

@RequestMapping(value = "/setSubscribe", method = RequestMethod.POST, consumes = "application/json")
@ResponseBody
private String doSubscribe(@ModelAttribute("subscribeForm") final SubscribeForm form)
  {
      return "";
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...