В моем контроллере есть такой метод:
@RequestMapping(value="getData", method=RequestMethod.GET)
@ResponseBody
public List<MyDataObj> getData()
{
return myService.getData();
}
Данные возвращаются как JSON или xsl, в зависимости от запроса.
Если человек, делающий запрос, не авторизован для доступа к данным, мне нужно перенаправить пользователя на «неавторизованную» страницу, поэтому что-то вроде этого:
@RequestMapping(value="getData", method=RequestMethod.GET)
@ResponseBody
public List<MyDataObj> getData()
{
if (!isAuthorized())
{
// redirect to notAuthorized.jsp
}
return myService.getData();
}
Все примеры, которые я видел с использованием Spring, требуют метода для возврата либо String
, либо ModelAndView
. Я думал об использовании HttpServletResponse.sendRedirect ()
, но все мои JSP находятся в WEB-INF и не могут быть доступны напрямую.
Как я могу отказать в доступе к URL-адресу запроса данных?