Я пытаюсь отправить весь объект (Product) из клиента Advanced rest в Chrome для обновления. Но поле id @Id String productId на сервере десериализуется с нулем - и ничего не поможет!
@Document(collection = "products")
public class Product {
@Id
private String productId;
private String name;
private String description;
//MongoTemplate productTemplate type in DAL
public Product updateProduct(Product product) {
System.out.println("id... - " + product.getProductId()); //null
Query query = new Query(Criteria.where("ProductId").is(new ObjectId
(product.getProductId())));
Product pro = productTemplate.findOne(query, Product.class);
System.out.println("product... - " + pro); //null
Update update = new Update();
update.set("name", product.getName());
update.set("description", product.getDescription());
update.set("endDate", product.getEndDate());
productTemplate.updateFirst(query, update, Product.class);
//I send such JSON:
{"productId":"5e948782136d0213c4bb9555",
"name": "New Product",
"description": "This first product",
"endDate": "2019-10-12"}