クラス LoginForm 内に 3 つのフィールド (usuario、senha、msgLogin) を持つフォームを作成しようとしています。入力ボックスからフィールド usuário と senha を受け取り、同じフィールドとフィールド MsgLogin を使用して同じページにリダイレクトしようとします。しかし、msgLogin フィールドを更新できず、その理由がわかりません。これらはコードです:
HTML:
<form id="frmLogin" class="form col-md-12" action="#" th:action="@{/login}" th:object="${loginForm}" method="post">
<div class="form-group">
<label for="usuario" class="col-md-1">Usuário: </label>
<input type="text" id="usuario" placeholder="Email" th:field="*{usuario}"/>
</div>
<div class="form-group">
<label for="senha" class="col-md-1">Senha: </label>
<input type="password" id="senha" placeholder="senha" th:field="*{senha}"/>
</div>
<div class="row">
<button id="entrar">Entrar</button>
</div>
<div class="row">
<div id="msgLogin"></div>
<p th:text="${loginForm.msgLogin}" />
</div>
</form>
コントローラー:
@RequestMapping("/")
public String init(@ModelAttribute LoginForm loginForm) {
Logger.getAnonymousLogger().info("Tela Inicial.");
return "home";
}
@PostMapping("/login")
public ModelAndView entrar(LoginForm loginForm) throws IOException {
Logger.getAnonymousLogger().info("Entrando no Internet Banking.");
service.login(usuario, senha);
ModelMap model = new ModelMap();
loginForm.setMsgLogin("I want to update that value!");
model.addAttribute("loginForm", loginForm);
return new ModelAndView("redirect:/", model);
}
ロンボクを使用したクラス:
@Getter
@Setter
public class LoginForm {
private String usuario;
private String senha;
private String msgLogin;
}