Вы можете получить доступ к параметрам запроса по неявной переменной ${param}
.
Например, http://example.com/context/page.jsp?foo=bar
в сочетании с
<c:if test="${param.foo == 'bar'}">
The foo's param value is bar!
</c:if>
<c:if test="${param.foo != 'bar'}">
The foo's param value is not bar, it is: ${param.foo}
</c:if>
покажет первое условие.
Есливы на самом деле хотите сохранить какой-то скрытый элемент ввода в последующих запросах (что на самом деле не было ясно в вашем вопросе), тогда все, что вам в основном нужно сделать, это:
<input type="hidden" name="foo" value="${param.foo}">
Обновить : согласно вашему обновлению: вам также нужно дать элементу ввода имя .Таким образом, например,
<input type="text" name="id1" value="${param.id1}" />
Таким образом, он доступен по request.getParameter("id1")
и по своей сути также ${param.id1}
.Вы видите это сейчас?
Обновление 2 : согласно вашему комментарию здесь: конечно, это связано с enctype="multipart/form-data"
.С этой кодировкой параметры запроса больше не находятся в карте параметров, а вместо этого в теле запроса, из-за смешения с двоичными данными (загрузка файлов).Это будет длинная история, чтобы объяснить все это, но в основном вам нужно разобрать запрос самостоятельно.Если вы используете Servlet 2.5 или старше, тогда Apache Commons FileUpload очень полезен здесь.Прочитайте, в частности, «Руководство пользователя» и «Часто задаваемые вопросы», чтобы увидеть примеры кода и узнать, как правильно его использовать (также в MSIE!).Вы даже можете решить абстрагироваться от FileUpload так, чтобы вы могли придерживаться HttpServletRequest#getParameter()
и ${param}
обычным способом, также см. эту статью .
Если вы уже используете Servlet3.0, тогда вы можете просто использовать HttpServletRequest#getParts()
.Вы можете даже абстрагироваться от него, чтобы вы могли придерживаться HttpServletRequest#getParameter()
и ${param}
обычным способом, также см. эту статью .
Обновление 3: ОВы действительно не хотите использовать JSP для выполнения всей обработки.Там это не для.Самое время выучить Servlet
.Кроме того, при использовании Filter
, который помещает все параметры из тела запроса обратно в карту параметров запроса (как описано в обеих статьях), вам также не обязательно нужен Servlet
в конце концов.