Spring - MVC のフォーム検証で問題に直面しています。まず、ユーザー名とパスワードを要求する送信フォームを要求するこの .jsp ページがあります。
資格情報を入力してログインしてください
<form:form method="POST" commandName="user" action="user/doLogin">
<form:errors path="*" cssClass="errorblock" element="div" />
<table>
<tr>
<td>User Name :</td>
<td><form:input path="name" /></td>
<td><form:errors path="name" cssClass="error" /></td>
</tr>
<tr>
<td>User Password :</td>
<td><form:password path="password" /></td>
<td><form:errors path="password" cssClass="error" /></td>
</tr>
<tr>
<td colspan="3"><input type="submit" /></td>
</tr>
</table>
</form:form>
このフォームの背後にあるコントローラーは、LoginController.java です。
@コントローラ
@RequestMapping("/user")
public class LoginController {
@RequestMapping(value = "/doLogin")
public String doLogin(@Valid User user, BindingResult result, ModelMap model) {
if (result.hasErrors()) {
return "user";
} else {
model.addAttribute("name", user.getName());
return "Done";
}
@RequestMapping(method = RequestMethod.GET)
public String displayUserForm(ModelMap model) {
model.addAttribute("user", new User());
return "user";
}
}
私のモデルパッケージには、私が利用する User オブジェクトがあります
org.hibernate.validator.constraints.NotEmpty;
org.hibernate.validator.constraints.Range;
検証目的で。
検証は完璧に機能しますが、問題は、フォームに間違った資格情報を入力して対応するメッセージを取得するたびに、次に資格情報を送信するときに、送信ボタンと doLogin() の 2 回目の呼び出し後に間違った URL が原因で 404 エラーが発生することです。関数 (ユーザー/ユーザー/doLogin)。正しく機能させるにはどうすればよいですか?事前に情報をありがとう!:)