javaee6 читает динамические # полей формы сообщения и перенаправляет на новую страницу
Мне интересно, каков наилучший подход для публикации динамического количества полей формы и последующего перенаправления на новую страницу.
Мое требование похоже на оформление заказа в PayPal: в торговом магазине вы нажимаете кнопку "Оформить заказ", и он перенаправляет на PayPal, отображающий все товары, которые вы оформили, и просит вас войти.
Это не возможно с Джерси, потому что он не открывает страницу и просто обрабатывает запрос веб-сервлета. Так я застрял с сервлетом? Является ли сервлет doPost (чтение опубликованных данных и сохранение в базе данных) тогда response.sendRedirect на страницу входа в систему (запросить данные для отображения) лучшим подходом?
Так:
merchant store->checkout.click->servlet.doPost(savePostedData) + servlet.sendRedirect(newUrl)->newUrl.queryData().showOnPage?
Спасибо,
czetsuya
1 ответ
Мне удалось достичь функциональности, упомянутой выше, с помощью сервлета. Например, у меня есть сервлет проверки, вот что я сделал:
public class CheckoutServlet extends HttpServlet implements Servlet {
private static final long serialVersionUID = -64282312915404473L;
@Inject
private Logger log;
@Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
Enumeration<String> fields = request.getParameterNames();
while (fields.hasMoreElements()) {
String name = fields.nextElement();
log.debug("field {}={}", name, request.getParameter(name));
}
response.sendRedirect("http://www.google.com");
}
}