Thymeleaf поле объекта сбрасывается на 0

Делаю приложение на Spring Boot с использованием Thymeleaf.

В представлении пытаюсь присвоить полю объекта значение другой переменной и передать обратно в контроллер. После передачи этого объекта в контроллер значение поля почему-то равно 0. То ли значение почему-то не присваивается этому полю, то ли не передается. Вот форма представления:

<form sec:authorize="isAuthenticated()" th:method="POST" th:object="${comment}" th:action="@{/tasks/comment/{id}(id=${task.id})}"> <!--TODO-->
        <input type="text" th:field="*{body}"/>
        <input type="hidden" th:field="*{taskId}" th:value="${task.id}"/><br>
        <span th:text="${task.id}"/>
        <input type="submit" value="Комментировать"/>
        </form>

Значение поля taskId после передачи равно 0. Хотя участок <span th:text="${task.id}"/> выводит правильное значение.

Контроллер:

    @PostMapping("/comment/{id}")
    public String postComment(@PathVariable long id, @ModelAttribute @Valid Comment comment
            , BindingResult br, Model model 
            , @AuthenticationPrincipal PersonDetails pd) {
        if (br.hasErrors()) {
            System.out.println("br has errors " + comment.getTaskId());
            return showTask(comment.getTaskId(), model, pd);
        }
        System.out.println("return showtask()");
        return showTask(commentService.save(id, comment, pd).getTask().getId(), model, pd);
    }

Как результат выводится br has errors 0.

Сущность:

@Entity
@Table(name = "comments")
public class Comment {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @NotBlank(message = "Комментарий не может быть пустым")
    private String body;
    @NotNull(message = "Комментарий, не прикрепленный к задаче, недопустим")
    @ManyToOne
    @JoinColumn(name = "task_id", referencedColumnName = "id")
    private Task task;
    private transient long taskId;
    @NotNull(message = "У комментария должен быть автор :)")
    @ManyToOne
    @JoinColumn(name = "author_id", referencedColumnName = "id")
    private Person author;
    @CreatedDate
    private LocalDateTime createdAt;
    private LocalDateTime editedAt;
    
    public Comment(){}

// getters, setters

Пробовал убирать модификатор transient с поля - бесполезно.


Ответы (0 шт):