Объект запроса доступен в теге. Неважно, используете ли вы файл класса или тега. В файлах тегов он доступен как в скриплетах Java, так и в EL.
Однако он доступен как объект ServletRequest, а не как объект HttpServletRequest (в EL класс объекта не имеет значения, но имеет значение в скриптлетах).
Кроме того, в ваших скриптлетах вам нужен полный метод, а не только имя свойства. Итак, ваш код должен быть:
<form action="<%= pageContext.getRequest().getRequestURI() %>">
, но даже это не сработает, потому что getRequestURI () является методом HttpServletRequest [1], а не ServletRequest. Поэтому либо используйте EL, либо используйте более длинные скриптлеты в файле тегов и приведите объект запроса.
[1] http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html#getRequestURI()