@PostMapping с несколькими RequestParams - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть контроллер пружинной загрузки с пост-методом.Я хочу передать несколько параметров в метод из JavaScript метода post.Я передаю данные моего метода записи следующим образом.

    {
      productPrices: {
                     fromDate: "2019-01-01",
                     toDate: "2019-02-01",
                     purchasePrice: "100",
                     retailPrice: "200",
                     wholesalePrice: "300"
                   },
                    pricesList : JSON.stringify(dataArr)
}

Мой Rest Controller выглядит следующим образом.

@RestController
public class ProductRestController {

    @PostMapping("/addPrdPriceData")
    @ResponseBody
    public Map<String, Object> addToCart(@NonNull @RequestParam(name = "productPrices") ProductPrices productPrices, @RequestParam(name = "pricesList") List<ProductPrices> pricesList) {

 }
}

Когда я вызываю метод Post, я получаю следующую ошибку.

> [org.springframework.web.bind.MissingServletRequestParameterException: Required ProductPrices parameter 'productPrices' is not present]

что я тут не так сделал ?????

1 Ответ

0 голосов
/ 25 сентября 2019

При передаче данных как единой сущности используйте один параметр запроса.

js.

 {
  "productData"
      {
        "productPrices": {
         "fromDate": "2019-01-01",
         "toDate": "2019-02-01",
         "purchasePrice": "100",
         "retailPrice": "200",
         "wholesalePrice": "300"
       },
        "pricesList" : JSON.stringify(dataArr)
       }
 }

Java

public class ProductRestController {

  @PostMapping("/addPrdPriceData")
  @ResponseBody
  public Map<String, Object> addToCart(@NonNull @RequestBody
  ProductData productData) {

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