finally { try { getBaseDonnees ().close () ; } catch (PersistenceException eException) { eException.printStackTrace () ; throw new ServletException (CConstante.EXC_DECONNEXION) ; } }
    public void initialiserBaseDonnees () throws ServletException    {      OQLQuery       lRequete ;       // Requte  raliser sur la base      QueryResults   lResultat ;      // Rsultat de la requte sur la base            try      {        // Rcupre le projet pour lequel le chef de projet s 'est connect        HttpSession session = getRequete ().getSession (true) ;        mSession = (Session)session.getAttribute("SESSION") ;        mProjet = mSession.getProjet() ;                getBaseDonnees ().begin () ;                int idProjet = mProjet.getId() ;        // Rcupre le projet dans la BD        lRequete = getBaseDonnees ().getOQLQuery ("select PROJET from owep.modele.execution.MProjet PROJET where mId = $1") ;        lRequete.bind (idProjet) ;        lResultat      = lRequete.execute () ;        mProjet = (MProjet) lResultat.next () ;                getBaseDonnees ().commit () ;                // recuperation du numero de l iteration choisie dans le menu deroulant        mIteration = mSession.getIteration() ;        mIterationNum = mIteration.getNumero();                // recherche de l iteration en cours        for (int m = 0; m < mProjet.getNbIterations() ; m++)        {          if (mProjet.getIteration(m).getEtat()==1)            mIterationEnCours = mProjet.getIteration(m).getId();        }        // si on a demand l affichage du suivi des collaborateurs pour une        // autre iteration que celle en cours        if (mIterationNum != mIterationEnCours)        {          // creation de la liste des taches des collaborateurs          MCollaborateur lCollaborateur ;          MTache lTache ;           // pour chaque collaborateur          for (int i = 0 ; i < mProjet.getNbCollaborateurs() ; i++)          {            ArrayList lListeTaches = new ArrayList ();            lCollaborateur = mProjet.getCollaborateur(i) ;            // pour chaque tache du collaborateur            for (int j = 0 ; j < lCollaborateur.getNbTaches() ; j++)            {              lTache = lCollaborateur.getTache(j) ;              // on ne retient que les taches de l iteration selectionne              boolean tacheOK = false ;              // on regarde si la tache en cours fait partie de l iteration selectionne              for(int k = 0; k<mIteration.getNbTaches();k++)              {                if (mIteration.getTache(k).getId() == lTache.getId())                 {                  tacheOK = true ;                }              }              // si la tache en cours appartient a l iteration selectionne              // on l ajoute a la liste des taches du collaborateur a afficher              if (tacheOK == true)              {                lListeTaches.add(lTache) ;              }            }            lCollaborateur.setListeTaches(lListeTaches) ;            // on ajoute le collaborateur a la liste a afficher            mProjet.setListe(new Integer(i), lCollaborateur) ;          }        }      }      catch (Exception eException)      {        eException.printStackTrace () ;        throw new ServletException (CConstante.EXC_TRAITEMENT) ;      }    }