Отправить строку как json с запросом GET с POSTMAN - PullRequest
0 голосов
/ 28 мая 2020

У меня есть Java Spring API, который ожидает 2 параметра, простую строку и объект:

@RequestMapping(value = "list", method = RequestMethod.GET)
public ResponseEntity<ListResource> getList(@RequestParam("agentName") String agentName,
                                            @RequestParam("paginationInfo") PaginationInfoList paginationInfo {

       //After http request i expect to have here my java Object PaginationInfoList ready to use

    }

Я пытаюсь отправить HTTP-запрос GET с помощью Postman, но получаю эту ошибку, тогда я полагаю, что я не отправляю объект данных "paginationInfo" правильным образом.

"Failed to convert value of type 'java.lang.String' to required type 'com.pippo.prova.test.model.in.PaginationInfoList'; nested exception is java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'com.pippo.prova.test.model.in.PaginationInfoList': no matching editors or conversion strategy found"

Поскольку я не могу изменить способ отправки, infact должен быть GET, и я должен использовать @ ReuqestParam, я не знаю, как отправить данные json в параметрах почтальона. Я пробую этот и другие варианты, но всегда получаю ошибку.

enter image description here

1 Ответ

1 голос
/ 28 мая 2020

Вы можете привязать параметры запроса к объекту. В почтальоне у вас будет 3 параметра («agentName», «pageSize» и «pageNumber»), и ваш контроллер получит 2 объекта

public ResponseEntity<ListResource> getList(@RequestParam("agentName") String agentName,
                                        @Valid PaginationInfoList paginationInfo)

http://dolszewski.com/spring/how-to-bind-requestparam-to-object/

...