Основной метод JSP имеет следующую подпись:
_jspService(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, java.io.IOException
Исходя из этого, вы можете программно получать доступ к объектам запросов и ответов из скриплета. Например:
<%= request.getParameter("foo").toString() %>
или
<%= request.getAttribute("bar").toString() %>
Если вы хотите сделать что-то более сложное, вы можете добавить к ним скриптлеты для объявления / инициализации локальных (Java) переменных; например,
<% String foo = request.getParameter("foo") == null ?
"no foo" : request.getParameter("foo").toString(); %>
<%= foo %>
Вы можете использовать это для поиска вашей модели в объекте запроса или ответа (я думаю, что это будет атрибут запроса с именем «модель»), приведение его к соответствующему типу и вызов его методов получения.
Причина в том, что у меня есть несколько вспомогательных методов HTML, которые я создал, чтобы отделить логику от пользовательского интерфейса, и мне нужно передать член модели для создания пользовательского элемента управления.
Лучше было бы превратить эти вспомогательные методы в пользовательские теги JSP, чтобы их можно было использовать, не прибегая к скриптлетам. Обычно считается, что JSP со встроенными скриптлетами трудно читать и поддерживать. Одна маленькая ошибка (или одно изменение в API модели), и JSP генерирует плохую Java на вашей платформе развертывания, и вы получаете неработающую страницу.