Как отправить объект как свойство из формы - PullRequest
0 голосов
/ 24 мая 2018

весна, спящий.У меня есть QuestionEntity, который содержит другую сущность (TestEntity):

public class QuestionEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;

@Column(name = "question_text")
private String questionText;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "test_id")
private TestEntity testEntity; ...}

На HTML-странице я хочу добавить TestEntity в качестве объекта (логика: у теста есть вопрос)

<form name="question" action="/exam/addQuestion/" method="post">
Текст вопроса:<br>
<input type="text" name="questionText.text">
<input type="hidden" name="testEntity" value="${testEntity}">
<input type="submit" name="addTest" value="add">

Получение:

    @PostMapping("addQuestion")
public String addQuestion(@ModelAttribute ("question") QuestionEntity questionEntity){
    testService.saveOrUpdate(questionEntity);
    return "redirect:/exam/getall";
}

, но Spring получает $ {testEntity} в виде строки, поэтому у меня есть ошибка:

Ошибка поля в объекте 'question' наполе 'testEntity': отклоненное значение [TestEntity {id = 3, name = 'Узнай свой психотип'}];коды [typeMismatch.question.testEntity, typeMismatch.testEntity, typeMismatch.exampro.entity.TestEntity, typeMismatch];аргументы [org.springframework.context.support.DefaultMessageSourceResolvable: codes [question.testEntity, testEntity];аргументы [];сообщение по умолчанию [testEntity]];сообщение по умолчанию [Не удалось преобразовать значение свойства типа 'java.lang.String' в требуемый тип 'exampro.entity.TestEntity' для свойства 'testEntity';вложенное исключение: java.lang.IllegalStateException: невозможно преобразовать значение типа «java.lang.String» в требуемый тип «exampro.entity.TestEntity» для свойства «testEntity»: не найдено подходящих редакторов или стратегии преобразования]

Как правильно отправить?Большое спасибо за любую помощь.

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