X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2FOneFormPage.java;h=e61511dc097c4e8e863bfb02dfa247d151e5943f;hb=b1a5fd73d697fcddd7ff3f6487ce6c173c9602e1;hp=5eb4db8bfb122c0f12510c334d3749af90d46d96;hpb=5f0c781007ae0ddce24057654a0ab095bc2a2b5b;p=gigi.git diff --git a/src/org/cacert/gigi/pages/OneFormPage.java b/src/org/cacert/gigi/pages/OneFormPage.java index 5eb4db8b..e61511dc 100644 --- a/src/org/cacert/gigi/pages/OneFormPage.java +++ b/src/org/cacert/gigi/pages/OneFormPage.java @@ -7,9 +7,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.cacert.gigi.GigiApiException; -import org.cacert.gigi.output.Form; +import org.cacert.gigi.output.template.Form; -public class OneFormPage extends Page { +public abstract class OneFormPage extends Page { Class c; @@ -21,9 +21,13 @@ public class OneFormPage extends Page { @Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { try { - Form.getForm(req, c).submit(resp.getWriter(), req); + Form form = Form.getForm(req, c); + if (form.submit(resp.getWriter(), req)) { + resp.sendRedirect(getSuccessPath(form)); + } } catch (GigiApiException e) { e.format(resp.getWriter(), getLanguage(req)); + doGet(req, resp); } } @@ -36,4 +40,6 @@ public class OneFormPage extends Page { } } + public abstract String getSuccessPath(Form f); + }