Я сопоставил один из моих методов в одном контроллере для возврата объекта JSON с помощью @ ResponseBody.
@RequestMapping("/{module}/get/{docId}")
public @ResponseBody Map<String, ? extends Object> get(@PathVariable String module,
@PathVariable String docId) {
Criteria criteria = new Criteria("_id", docId);
return genericDAO.getUniqueEntity(module, true, criteria);
}
Однако вместо этого он перенаправляет меня в JSTLView.Скажем, если {module} это product, а {docId} равен 2, то в консоли я нашел:
DispatcherServlet с именем 'xxx', обрабатывающий POST-запрос для рендеринга [/ xxx / product / get / 2]view [org.springframework.web.servlet.view.JstlView: name 'product / get / 2';URL [/WEB-INF/views/jsp/product/get/2.jsp]] в DispatcherServlet с именем 'xxx'
Как это может произойти?В том же контроллере у меня есть другой метод, похожий на этот, но он работает нормально:
@RequestMapping("/{module}/list")
public @ResponseBody Map<String, ? extends Object> list(@PathVariable String module,
@RequestParam MultiValueMap<String, String> params,
@RequestParam(value = "page", required = false) Integer pageNumber,
@RequestParam(value = "rows", required = false) Integer recordPerPage) {
...
return genericDAO.list(module, criterias, orders, pageNumber, recordPerPage);
}
Выше do возвращает корректно, предоставляя мне список объектов, которые мне нужны.Кто-нибудь, чтобы помочь мне разгадать тайну?