Java spring - "обязательный параметр int отсутствует" - PullRequest
0 голосов
/ 27 сентября 2019

Я новенькая весной.Я пытаюсь создать editUser.jsp с целью редактирования пользователя в базе данных MySQL.По этой причине я создал контроллер и метод для передачи данных из формы userList.jsp в editUser.jsp.Вот код:

@RequestMapping(value = "/editUser", method = RequestMethod.POST)
private String editUser(@RequestParam int id, Model model) {
    Users user = (Users) session.load(Users.class, id);
    ModelAndView mv = new ModelAndView("user");
    model.addAttribute("user", user);
    if(user.getId()!=null){
        Transaction transaction = session.beginTransaction();
        session.update(user);
        transaction.commit();
    }
    return "editUser";
}

И данные хорошо передаются на страницу editUser.Теперь, когда я пытаюсь редактировать и отправлять данные, я получаю сообщение об ошибке: Обязательный параметр int 'id' отсутствует

<form:form action="editUser.htm" method="GET" commandName="editUser">
    <div>Account Information</div>
    <div>
        <form:label path="uname">User name:</form:label><br/>
        <form:input id="uname" type="text" path="uname"></form:input><br/>
        <form:label path="pass">Password:</form:label><br/>
        <form:input id="pass" type="text" path="pass"></form:input><br/>
        </div>

        <br/><br/>

        <div>Contact Information</div>
        <div>
        <form:label path="gender">Choose gender:</form:label><br/>
        <form:select id="gender" type="text" path="gender">
            <form:option value="Female">Female</form:option>
            <form:option selected="selected" value="Male">Male</form:option>
        </form:select><br/>
        <form:label path="age">Age:</form:label><br/>
        <form:input id="age" type="text" path="age"></form:input><br/>
        <form:label path="age">Address:</form:label><br/>
        <form:input id="address" type="text" path="address"></form:input><br/>
        </div>
        <input type="submit" value="Edit User"/>
</form:form>enter code here

Нужно ли мне создавать другой метод в контроллере, которыйСледует ли обрабатывать данные обновления в базе данных, или обработка обновлений может выполняться в существующем методе (в настоящее время я совершенно запутался, как jsp страница «знает», какой метод из Controller будет вызван)?Задан идентификатор столбца базы данных - автоинкремент.

Заранее спасибо.

1 Ответ

0 голосов
/ 29 сентября 2019

@ RequestParam (value = "id", обязательный = "false") int id

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...