src/main/java/dhbw/jpv/projekte/web/ProjektEditServlet.java
/**
     * Aufgerufen in doPost(): Neue oder vorhandene Aufgabe speichern
     *
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException
     */
Aufgerufen in doPost(): Neue oder vorhandene Aufgabe speichern
@param request
@param response
@throws ServletException
@throws IOException
Aufgerufen in doPost () : Neue oder vorhandene Aufgabe speichern @param request @param response @throws ServletException @throws IOException
private void saveProjekt(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        List<String> errors = new ArrayList<>();
        String projektAbteilung = request.getParameter("projekt_abteilung");
        String projektDueDate = request.getParameter("projekt_due_date");
        String projektDueTime = request.getParameter("projekt_due_time");
        String projektStatus = request.getParameter("projekt_status");
        String projektShortText = request.getParameter("projekt_short_text");
        String projektLongText = request.getParameter("projekt_long_text");
        Projekt projekt = this.getRequestedProjekt(request);
        if (projektAbteilung != null && !projektAbteilung.trim().isEmpty()) {
            try {
                projekt.setAbteilung(this.abteilungBean.findById(Long.parseLong(projektAbteilung)));
            } catch (NumberFormatException ex) {
            }
        }
        Date dueDate = WebUtils.parseDate(projektDueDate);
        Time dueTime = WebUtils.parseTime(projektDueTime);
        if (dueDate != null) {
            projekt.setDueDate(dueDate);
        } else {
            errors.add("Das Datum muss dem Format dd.mm.yyyy entsprechen.");
        }
        if (dueTime != null) {
            projekt.setDueTime(dueTime);
        } else {
            errors.add("Die Uhrzeit muss dem Format hh:mm:ss entsprechen.");
        }
        try {
            projekt.setStatus(ProjektStatus.valueOf(projektStatus));
        } catch (IllegalArgumentException ex) {
            errors.add("Der ausgewählte Status ist nicht vorhanden.");
        }
        projekt.setShortText(projektShortText);
        projekt.setLongText(projektLongText);
        this.validationBean.validate(projekt, errors);
        if (errors.isEmpty()) {
            this.projektBean.update(projekt);
        }
        if (errors.isEmpty()) {
            response.sendRedirect(WebUtils.appUrl(request, "/app/projekte/list/"));
        } else {
            FormValues formValues = new FormValues();
            formValues.setValues(request.getParameterMap());
            formValues.setErrors(errors);
            HttpSession session = request.getSession();
            session.setAttribute("projekt_form", formValues);
            response.sendRedirect(request.getRequestURI());
        }
    }
private void saveProjekt ( HttpServletRequest request , HttpServletResponse response ) throws ServletException , IOException { List < String > errors = new ArrayList < > ( ) ; String projektAbteilung = request . getParameter ( "projekt_abteilung" ) ; String projektDueDate = request . getParameter ( "projekt_due_date" ) ; String projektDueTime = request . getParameter ( "projekt_due_time" ) ; String projektStatus = request . getParameter ( "projekt_status" ) ; String projektShortText = request . getParameter ( "projekt_short_text" ) ; String projektLongText = request . getParameter ( "projekt_long_text" ) ; Projekt projekt = this . getRequestedProjekt ( request ) ; if ( projektAbteilung != null && ! projektAbteilung . trim ( ) . isEmpty ( ) ) { try { projekt . setAbteilung ( this . abteilungBean . findById ( Long . parseLong ( projektAbteilung ) ) ) ; } catch ( NumberFormatException ex ) { } } Date dueDate = WebUtils . parseDate ( projektDueDate ) ; Time dueTime = WebUtils . parseTime ( projektDueTime ) ; if ( dueDate != null ) { projekt . setDueDate ( dueDate ) ; } else { errors . add ( "Das Datum muss dem Format dd.mm.yyyy entsprechen." ) ; } if ( dueTime != null ) { projekt . setDueTime ( dueTime ) ; } else { errors . add ( "Die Uhrzeit muss dem Format hh:mm:ss entsprechen." ) ; } try { projekt . setStatus ( ProjektStatus . valueOf ( projektStatus ) ) ; } catch ( IllegalArgumentException ex ) { errors . add ( "Der ausgewählte Status ist nicht vorhanden.") ; } projekt . setShortText ( projektShortText ) ; projekt . setLongText ( projektLongText ) ; this . validationBean . validate ( projekt , errors ) ; if ( errors . isEmpty ( ) ) { this . projektBean . update ( projekt ) ; } if ( errors . isEmpty ( ) ) { response . sendRedirect ( WebUtils . appUrl ( request , "/app/projekte/list/" ) ) ; } else { FormValues formValues = new FormValues ( ) ; formValues . setValues ( request . getParameterMap ( ) ) ; formValues . setErrors ( errors ) ; HttpSession session = request . getSession ( ) ; session . setAttribute ( "projekt_form" , formValues ) ; response . sendRedirect ( request . getRequestURI ( ) ) ; } }
Aufgerufen in doPost(): Neue oder vorhandene Aufgabe speichern
 @param request
 @param response
 @throws ServletException
 @throws IOException
Aufgerufen in doPost () : Neue oder vorhandene Aufgabe speichern @param request @param response @throws ServletException @throws IOException
// Formulareingaben prüfen // Ungültige oder keine ID mitgegeben // Datensatz speichern // Weiter zur nächsten Seite // Keine Fehler: Startseite aufrufen // Fehler: Formuler erneut anzeigen