Вызов JSP из сервлета с динамической картой - PullRequest
0 голосов
/ 16 марта 2012

Я новичок в программировании на стороне сервера и пишу простую программу сервлет / jsp. Часть сервлета должна получить параметры из URL и сохранить их на карте, а часть jsp должна прочитать карту и показать ее содержимое в таблице HTML.

Вот сервлет:

@WebServlet("/RestaurantServlet86105511")
public class RestaurantServlet86105511 extends HttpServlet {
private static HashMap<String, String> map = new HashMap<>();
private String name;
private String price;

@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    name = request.getParameter("name");
    price = request.getParameter("price");
    map.remove(name);
    map.put(name, price);
    RequestDispatcher rd = request
            .getRequestDispatcher("/WEB-INF/RestaurantJSP86105511.jsp");
    rd.forward(request, response);
}
public static HashMap<String, String> getMap() {
    return map;
}
}

Я не знаю, что я делаю неправильно, но после каждого вызова rd.forward будет также удалено содержимое карты, и jsp будет печатать только последние введенные мной параметры в URL. Есть ли другой способ вызова jsp из сервлета? или я просто делаю это неправильно?

1 Ответ

0 голосов
/ 16 марта 2012

Что вам нужно сделать, это поместить вашу карту в запрос как атрибут:

request.setAttribute("yourMap", map);

Затем в JSP вы можете использовать JSTL и EL для доступа к значениям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...