Я хотел бы вызвать метод Controller через класс Java, чтобы я мог вернуть конкретное представление. В этом случае у меня есть короткий список идентификаторов; если идентификатор текущего пользователя отсутствует в этом списке, перенаправьте его в представление invalidUser.
Я могу сделать это на стороне клиента с помощью Ajax или кнопки: onclick="location.href='/invalidUser'
Но мне не ясно, как я могу вызвать метод invalidUser () от ViewsController из класса Java.
Как я могу сделать это с Java в методе invalidUserRedirect ()? Я думал получить базовый URL-адрес из HttpServletRequest, как показано здесь: Получить корневой / базовый URL в Spring MVC , а затем сделать http-вызов baseUrl + "/ invalidUser", но это не похоже на право подход.
AuthService:
@Service
public class AuthService {
public void invalidUserRedirect(HttpServletRequest request) {
// Make call to invalidUser() in ViewsController
}
}
Контроллер просмотров:
@Controller
public class ViewsController {
@RequestMapping(value = "/invalidUser", method = {RequestMethod.GET})
public String invalidUser() {
return "invalid";
}
}