1

私の目標は、ログインとパスワードを処理してユーザーを承認することです。この例を再現しようとしましたが、問題に直面しました。

私はエンティティユーザークラスを持っています:

@DynamicUpdate
public class EntityUser
{
    String login;
    String password;

    public EntityUser() {}

    public EntityUser
    (
            String login,
            String password
        )
    {   
        this.login = login;
        this.password = password;
    }

    public String getLogin() {
        return login;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

これは私の.jspファイル フラグメントです。

<form action="#" th:action="@{/loginCheck}" th:object="${user}" method="post">
            <table border="1" width="30%" cellpadding="3">
                <thead>
                    <tr>
                        <th colspan="2">Login Here</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>User Name</td>
                        <td><input type="text" th:field="*{login}"/></td>
                    </tr>
                    <tr>
                        <td>Password</td>
                        <td><input type="password" th:field="*{password}"/></td>
                    </tr>
                    <tr>
                        <td><input type="submit" value="Login" /></td>
                        <td><input type="reset" value="Reset" /></td>
                    </tr>
                </tbody>
            </table>
        </form>

そして、これは私のController.javaクラスのフラグメントです:

@RequestMapping(value = "/loginCheck", method = RequestMethod.GET)
    public String userForm(Model model)
    {
        EntityUser user = new EntityUser();
        user.setLogin("login");
        user.setPassword("password");
        model.addAttribute("user", user);

        System.out.println(user.getLogin());
        System.out.println(user.getPassword());

        return "/loginCheck";
    }

    @RequestMapping(value = "/loginCheck", method = RequestMethod.POST)
    public String processUser(@ModelAttribute(value="user") EntityUser user)
    {

        System.out.println(user.getLogin());
        System.out.println(user.getPassword());

        loginInfo = "Jakarta";
        return "redirect:/controllers";
    }

値を入力して [送信] ボタンを押した後、GET または POST メソッドは呼び出されず (コンソールには出力されませんでした)、ページは /# に移動します。

一方、に置き換える form action="#"form action="/HelloSpringMVC/loginCheck"、POST メソッドが呼び出されますが、出力される文字列は両方とも「null」です。

それで、何が問題なのですか?誰か知ってる?

編集済み: これ が私のpom.xmlおよびweb.xmlファイルです。

4

1 に答える 1