Во-первых, нет необходимости каждую из кнопок оборачивать в form, как указано ниже:
snippet<form action = "" method="post">
<input type="hidden" name="id" value="${user.firstName}">
<input type="hidden" name="name" value="${user.lastName}">
</form>
<form method="post">
<button type="submit" name="delete" value="${user.id}">Удалить</button>
</form>
<form method="post">
<button type="submit" name="update" value="${user.id}">Изменить</button>
</form>
Более корректный вариант:
<form method="post">
<input type="hidden" name="id" value="${user.firstName}">
<input type="hidden" name="name" value="${user.lastName}">
<button formaction="action1" type="submit" name="delete" value="${user.id}">Удалить</button>
<button formaction="action2" type="submit" name="update" value="${user.id}">Изменить</button>
</form>
Обратите внимание на атрибут -
formaction="..."
так вы можете внутри одной формы задать несколько разных видов actions. Внутри атрибута укажите action (url), куда должна отсылаться форма.
Подскажите как перенаправить с одного jsp на другой для заполнения новой формы а после перенаправить данное изменение на сервлет.
Могу предположить, что вы хотите по нажатию кнопки "Удалить" совершить POST запрос на сервер, дальше некий метод находит запись в БД и удаляет.
А по нажатию на кнопку "Изменить" вы хотите редактировать содержимое формы. Так вот, post запрос там вообще не нужен. Для начала get запросом верните пользователю форму с инпутами, куда он должен ввести данные, дальше по клику на кнопку или инпут (submit) POST запросом отправляете введенные данные на сервер. И опять-таки метод контроллера примет данные (чтобы данные отправлялись нужно, чтобы инпуты имели name). А дальше остается найти запись по id (который у вас скрыто передается) и по нему получить объект и при помощи сеттеров добавить новые значения и сохранить