Пример #1
0
  @Override
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws IOException, ServletException {
    Session session = RequestAdapter.getSession(request);

    UserDAOIf userDAO = DAOFactory.UserDAOIf(session);

    User user = userDAO.getUser(RequestAdapter.getUser(request).getUid());
    if (user == null) {
      request.setAttribute("title", "Benutzer nicht gefunden");
      request.getRequestDispatcher("MessageView").forward(request, response);
      return;
    }

    if (Configuration.getInstance().isMatrikelNumberMustBeEnteredManuallyIfMissing()
        && !(user instanceof Student)) {
      if (request.getParameter("matrikelno") != null
          && Util.parseInteger(request.getParameter("matrikelno"), 0) > 0) {
        userDAO.makeUserStudent(
            RequestAdapter.getUser(request).getUid(),
            Util.parseInteger(request.getParameter("matrikelno"), 0));
      }
    }
    if (user instanceof Student) {
      Student student = (Student) user;
      if (request.getParameter("studiengang") != null
          && !"".equals(request.getParameter("studiengang").trim())) {
        student.setStudiengang(request.getParameter("studiengang"));
      }
      Transaction tx = session.beginTransaction();
      userDAO.saveUser(student);
      tx.commit();
    }

    ContextAdapter contextAdapter = new ContextAdapter(getServletContext());
    response.sendRedirect(
        request.getContextPath() + "/" + contextAdapter.getServletsPath() + "/Overview");
  }