В моем веб-приложении CRUD MVC у меня есть страница users.jsp
, которая вызывается сервлетом /users
, который отображает разбитую на страницы таблицу пользователей с кнопками для каждого пользователя, который выполняет действие (например, предоставляет права администратора), но не перенаправить на отдельную страницу JSP. Действие выполняется путем вызова отдельного сервлета по нажатию кнопки:
<button formaction="changeUserRights">Grant admin rights</button>
Сервлет changeUserRights
выполняет соответствующую операцию БД и вызывает
resp.sendRedirect("/users")
, который отображает нумерацию страниц и перенаправляет на users.jsp
.
Однако, когда я нажимаю кнопку Grant admin rights
, находясь на странице 2+ (например, users?page=3
), приложение перенаправляет меня на страницу по умолчанию /users
.
Как сделать так, чтобы приложение оставалось на той же странице, то есть сохранить параметр page
? Я знаю, как сохранить параметры в качестве атрибутов запроса и передать их другим сервлетам в рамках того же запроса, но здесь, насколько я понимаю, я создаю новый запрос по нажатию кнопки. Я думаю, я мог бы сохранить параметр в sessionScope
, но я считаю, что есть лучший способ. Так как мне передать этот параметр сервлету /changeUserRights
с этим новым запросом, сделанным из jsp?
Я прочитал несколько постов на SO о том, как остаться на той же странице, например этот , но не мог понять, как применить его к моему вопросу.
Спасибо.