Я хочу отправить POST-запрос почтальону, который создает объект покупки и сохраняет его в базе данных.
Мой класс Покупка:
@Document(collection = "purchases")
public class Purchase {
@Id
private String id;
@DBRef
private User buyer;
@DBRef
private List<File> FilesToPurchase;
private Long timestamp;
public Purchase() { }
public Purchase(User buyer, List<File> filesToPurchase) {
this.buyer = buyer;
FilesToPurchase = filesToPurchase;
}
// Getters and setters not posted here.
Я хочу вставить в базу данныхновая покупка, совершенная уже существующим пользователем «покупателем», который хочет приобрести список уже существующих файлов «FilesToPurchase».
У меня в контроллере есть функция POST, которая получает объект покупки с использованием аннотации @RequestBody, но до сих пор у меня есть NullPointerExceptions из-за полученного пустого объекта Purchase.
Я не знаю, как обрабатывать аннотацию @DBRef.В Почтальоне я пытаюсь отправить JSON так:
{
"buyer": {
"$ref":"users",
"$id" : "ObjectId('5bb5d6634e5a7b2bea75d4a2')"
},
"FilesToPurchase": [
{ "$ref":"files",
"$id" : "ObjectId('5bb5d6634e5a7b2bea75d4a5')"
}
]
}