]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/pages/account/mail/MailOverview.java
upd: use a more strict pattern for handling forms
[gigi.git] / src / org / cacert / gigi / pages / account / mail / MailOverview.java
index da3befd581b214c57a284431de6e9b2d7d11d522..4177d79cca7dfeb820607bac63ce07979a0f6886 100644 (file)
@@ -1,12 +1,12 @@
 package org.cacert.gigi.pages.account.mail;
 
 import java.io.IOException;
-import java.io.PrintWriter;
 import java.util.HashMap;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.cacert.gigi.GigiApiException;
 import org.cacert.gigi.dbObjects.User;
 import org.cacert.gigi.localisation.Language;
 import org.cacert.gigi.output.template.Form;
@@ -33,17 +33,20 @@ public class MailOverview extends Page {
 
     @Override
     public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
-        PrintWriter out = resp.getWriter();
-        if (req.getParameter("addmail") != null) {
-            MailAddForm f = Form.getForm(req, MailAddForm.class);
-            if (f.submit(out, req)) {
-                resp.sendRedirect(MailOverview.DEFAULT_PATH);
-            }
-        } else {
-            MailManagementForm f = Form.getForm(req, MailManagementForm.class);
-            if (f.submit(out, req)) {
-                resp.sendRedirect(MailOverview.DEFAULT_PATH);
+        try {
+            if (req.getParameter("addmail") != null) {
+                MailAddForm f = Form.getForm(req, MailAddForm.class);
+                if (f.submit(req)) {
+                    resp.sendRedirect(MailOverview.DEFAULT_PATH);
+                }
+            } else {
+                MailManagementForm f = Form.getForm(req, MailManagementForm.class);
+                if (f.submit(req)) {
+                    resp.sendRedirect(MailOverview.DEFAULT_PATH);
+                }
             }
+        } catch (GigiApiException e) {
+            e.format(resp.getWriter(), getLanguage(req));
         }
         super.doPost(req, resp);
     }