2017-04-11 15 views
0

リクエストメソッドがあります。私のウェブサイトではサポートされていませんが、私が間違っている箇所を特定できません。私は似たような質問を掘り下げて見てきましたが、ほとんどはrequestMethodの何らかのタイプミスによって引き起こされたようですが、私のコードでその理由を見つけることはできません。Spring MVC - リクエストメソッドのポストがサポートされていない

サインアップフォーム:

@Controller 
public class RegistrationController { 

@RequestMapping(value = "/register", method = RequestMethod.GET) 
public String viewRegistration(Map<String, Object> model) { 
    User userForm = new User();  
    model.put("userForm", userForm); 

    return "signup"; 
} 

@RequestMapping(value = "/register", method = RequestMethod.POST) 
public String processRegistration(@ModelAttribute("userForm") User user) { 

    user.setId(0); 
    user.setEmail(user.getEmail()); 
    user.setPassword(user.getPassword()); 

    return "RegistrationSuccess"; 
} 

}私は、問題を特定するために、コントローラを簡素化しようとしましたが、それを得るために管理することはできません

<form action="/register" method="post" class="form" role="form" 
       commandName="userForm"> 
       <div class="row"> 
        <div class="col-xs-12 col-sm-6 col-md-6"> 
         <input class="form-control" name="firstname" 
          placeholder="First Name" type="text" required autofocus /> 
        </div> 
        <div class="col-xs-12 col-sm-6 col-md-6"> 
         <input class="form-control" name="lastname" 
          placeholder="Last Name" type="text" required /> 
        </div> 
       </div> 
       <br /> 
       <div class="form-group"> 
        <input class="form-control" name="email" placeholder="Your Email" 
         type="email" /> 
       </div> 
       <div class="form-group"> 
        <input class="form-control" name="reenteremail" 
         placeholder="Re-enter Email" type="email" /> 
       </div> 
       <div class="form-group"> 
        <input class="form-control" name="password" 
         placeholder="New Password" type="password" /> <label for=""> 
         Birth Date</label> 
        <div class="row"> 
         <div class="col-xs-4 col-md-4"> 
          <select class="form-control"> 
           <option value="Month">Month</option> 
          </select> 
         </div> 
         <div class="col-xs-4 col-md-4"> 
          <select class="form-control"> 
           <option value="Day">Day</option> 
          </select> 
         </div> 
         <div class="col-xs-4 col-md-4"> 
          <select class="form-control"> 
           <option value="Year">Year</option> 
          </select> 
         </div> 
        </div> 
        <label class="radio-inline"> <input type="radio" 
         name="sex" id="inlineCheckbox1" value="male" /> Male 
        </label> <label class="radio-inline"> <input type="radio" 
         name="sex" id="inlineCheckbox2" value="female" /> Female 
        </label> <br /> <br /> 
        <button class="btn btn-lg btn-primary btn-block" type="submit"> 
         Sign up</button> 
      </form> 

フォームを処理する方法働く

私は、フォーム上の送信ボタンをクリックするたびに、私は次のエラーを取得:

osweb.servlet.PageNotFound:リクエストメソッド「POST」は

にこれを引き起こしていることができるか上の任意のアイデアをサポートしていませんが?ありがとう!

編集:開発ツールの投稿メソッドのScreenshot。 (これがために頼まれた正しいものであれば、完全にわからない?)

+0

ことができますしてくださいChromeまたはFirefoxデベロッパーツールのリクエストのスクリーンショットを確認または提供しますか?フォームが呼び出すURLが表示されます。エンドポイントが正常に動作しているかどうかを確認するために、ツールを使用してリクエストを手動で送信してみてください。私はChromeのPostmanアドオンを使用します。 –

+0

あなたのパスは不完全です。インデックスページのパスを表示できますか?インデックスパスは "http:// localhost:8080/springexample/something"のようになります。 –

+0

インデックスページパスの意味がわかりません。私のインデックスページは期待通りに機能します。私のインデックスページからサインアップページへのパスは、hrefを通して行われます。 –

答えて

0

パスが不完全です:

<form action="/register" method="post" class="form" role="form" 
      commandName="userForm"> 

あなたのような何かを追加する必要があります。

<form action="http://localhost:8080/register" method="post" class="form" role="form" 
      commandName="userForm"> 
+0

返信ありがとうございました "https:// localhost:8090/register"へのパスを変更しましたが、これと同じエラーが表示されます。 –

関連する問題