У меня есть конечная точка REST, которую я вызываю для запроса некоторых данных, но она возвращает один и тот же объект три раза в моем ответе JSON, а не только возвращает разные результаты.
Это ответ, который я получаю:
[
{
"id": "5555 ",
"label": "MAIN USER (5555) "
},
{
"id": "5555 ",
"label": "MAIN USER (5555) "
},
{
"id": "5555 ",
"label": "MAIN USER (5555) "
}
]
Это контроллер, который используется для генерации ответа JSON:
@RestController
public class AutoCompleteController {
private AutoCompleteService autoCompleteService;
private EntityManager em;
public AutoCompleteController(AutoCompleteService autoCompleteService, EntityManager em) {
this.autoCompleteService = autoCompleteService;
this.em = em;
}
@RequestMapping(value = "jobs", method = RequestMethod.GET)
public @ResponseBody
List<AutoComplete> getSalary(@RequestParam(value = "autocomplete") String autocompleteValue) {
return autoCompleteService.retrieveSalary(autocompleteValue);
}
}
В свою очередь, контроллер вызывает AutoCompleteService
:
@Service
public class AutoCompleteService {
private AutoCompleteRepository autocompleteRepository;
public AutoCompleteService(AutoCompleteRepository autRepo) {
this.autocompleteRepository = autRepo;
}
public List<AutoComplete> retrieveSalary(String jobClassCd) {
List<AutoComplete> salaries = autocompleteRepository.findAllByJobClassCdIsContaining(jobClassCd);
if (salaries.size() <= 0) {
throw new AutoCompleteNotFoundException(jobClassCd);
}
return salaries;
}
}