Я новичок в Angular, и у меня следующая ситуация с использованием API в Java:
У меня есть class Release
, где категория НЕ обязательна (категория класса).
@Entity
@Table (name = "release")
public class Release {
@Id
@GeneratedValue (strategy = GenerationType.IDENTITY)
private Long id;
@NotNull
private String description;
@ManyToOne
@JoinColumn (name = "id_category")
private Category;
(...)
}
Когда я регистрирую релиз на странице, созданной в Angular с использованием REST API, я отправляю json
этому API следующим образом:
{"description": "test", "category": {}}
из-за того, что не сообщили категории. Но мой API возвращает следующую ошибку (в Java):
TransientObjectException - объект ссылается на несохраненный переходный процесс
instance - сохранить временный экземпляр перед сбросом
Я выполнил тест в Почтальоне и отправил json
следующим образом, чтобы зарегистрировать релиз:
{"description": "test"}
Таким образом я могу зарегистрироваться, тогда возникает сомнение:
Ошибка в Angular, который использует p-dropdown
компонент PrimeNG
следующим образом:
<p-dropdown placeholder = "Select ..." [autoWidth] = "false"
[filter] = "true" [options] = "categories"
[(ngModel)] = "release.category.id" name = "category"
#category = "ngModel"> </ p-dropdown>
или ошибка в объявлении категории в выпуске класса?
Когда вы регистрируете релиз, информирующий о категории, ошибок нет, и json
отправляется следующим образом:
{"description": "test", "category": {"id": 1}}
Спасибо!