示例#1
0
  public void controller(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    try {

      hsession = HibernateUtil.currentSession();
      sessione = request.getSession();
      tx = hsession.beginTransaction();

      String action = request.getParameter("action");

      if (action == null) action = "home";

      /*if(action.equals("login"))
      login(request, response);*/

      Users u = (Users) sessione.getAttribute("user");

      if (u == null) {
        throw new LoginException();
      } else if (u.getTipo().intValue() < 2) {
        throw new LoginException();
      }

      if (action.equals("home")) accedi(request, response);
      else if (action.equals("chiudi")) chiudiBilancio(request, response);

    } catch (LoginException e) {

      Avviso err = new Avviso(e.getMessage());
      request.setAttribute("err", err);
      nextview = "/./error.jsp";

    } catch (Exception e) {

      Avviso err =
          new Avviso("Errore indefinito. Ricorda di non usare il tasto REFRESH di Explorer!");
      request.setAttribute("err", err);
      System.out.println(e.getMessage());
      nextview = "/./error.jsp";

    } finally {

      RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(nextview);
      if (dispatcher != null) {
        response.encodeURL(nextview);
        dispatcher.forward(request, response);
      }
      HibernateUtil.closeSession();
    }
  }
示例#2
0
  private void chiudiBilancio(HttpServletRequest request, HttpServletResponse response) {

    String page = request.getParameter("page");
    String anno = request.getParameter("anno");

    if (page.equals("1")) {
      nextview = "/bilancio/chiudi_bilancio.jsp?anno=" + anno;
    } else {
      Query q = hsession.createQuery("FROM Anno WHERE anno = :anno");
      q.setString("anno", anno);

      Anno a = (Anno) q.list().get(0);
      a.setChiuso(true);

      hsession.saveOrUpdate(a);

      tx.commit();

      accedi(request, response);
    }
  }