je vous montre les partie du code les plus importantes:
struts-config.xml:
******************
<form-beans type="org.apache.struts.action.ActionFormBean">
<form-bean name="planningForm" type="ma.cor.soft.pfe.beans.PlanningForm" />
</form-beans>
<action
path="/indexp"
type="ma.cor.soft.pfe.action.IndexpAction"
parameter="do">
<forward name="successindex" path="/planning/planning.jsp"/>
</action>
<action attribute="planningForm"
input="/planning/planning.jsp"
name="planningForm"
parameter="do"
path="/rechercher"
scope="session"
type="ma.cor.soft.pfe.action.RechercherAction">
<forward name="success2rindex" path="/planning/planning.jsp" />
</action>
<action
attribute="planningForm"
input="/activites/moactivite.jsp"
name="planningForm"
parameter="do"
path="/activiteEdit"
scope="session"
type="ma.cor.soft.pfe.action.RechercherAction">
<forward name="showEdit" path="/activites/moactivite.jsp" />
<forward name="showList" path="/indexp.do" redirect="true" />
<forward name="showAdd" path="/activites/ajactivite.jsp" />
</action>
dans la classe RechercherAction.java (extends DispatchAction) :
*************************************************
pour Modifier:
**********
public ActionForward editActivite(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
{
PlanningForm planningForm = (PlanningForm) form;
String id = String.valueOf(request.getParameter("idActivite" ));
MetierManager classemetierManager = new MetierManager();
planningForm.setActiv(classemetierManager.getActiviteByPrimaryKey(id));
return mapping.findForward("showEdit" );
}
pour sauvegarder :
*****************
public ActionForward saveActivite(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws ParseException, java.text.ParseException
{
PlanningForm planningForm = (PlanningForm) form;
MetierManager classemetierManager = new MetierManager();
classemetierManager.saveActivite(planningForm.getActiv());
return mapping.findForward("showList" );
}
dans la classe MetierManager.java :
****************************
il y a la methode suivante:
-----------------------
public PlanningForm getActiviteByPrimaryKey(String primaryKey) {
PlanningForm aaa = null;
Session session = null;
Transaction tx = null;
try {
session = Hibernateutil.currentSession();
tx = session.beginTransaction();
aaa = (PlanningForm) session.get(PlanningForm.class, primaryKey);
tx.commit();
} catch (HibernateException e) { .... }
return aaa;
}
et il y a aussie :
----------------
public void saveActivite(PlanningForm bookValue) throws ParseException, java.text.ParseException {
Session session = null;
Transaction tx = null;
try {
session = Hibutil.currentSession();
tx = session.beginTransaction();
PlanningForm aaa;
if (bookValue.getIdActivite() != null) {
aaa = (PlanningForm) session.get(PlanningForm.class, bookValue.getIdActivite());
if (aaa != null) {
aaa.setIntituleActivite(bookValue.getIntituleActivite());
aaa.setJourActivite(bookValue.getJourActivite());
aaa.setLieu(bookValue.getLieu());
aaa.setProjet(bookValue.getProjet());
aaa.setTranche(bookValue.getTranche());
aaa.setUtilisateur(bookValue.getUtilisateur());
session.update(aaa);
}
}
else
{ //nouveau aaa dans le cas d'ajout !
aaa = new PlanningForm();
aaa.setIntituleActivite(bookValue.getIntituleActivite());
aaa.setJourActivite(bookValue.getJourActivite());
aaa.setLieu(bookValue.getLieu());
aaa.setProjet(bookValue.getProjet());
aaa.setTranche(bookValue.getTranche());
aaa.setUtilisateur(bookValue.getUtilisateur());
session.save(aaa);
}
tx.commit();
} catch (HibernateException e) { .... }
}
Voilà:
Le PROBLEM est que MES MODIFICATION que je SAISIES sur le Formulaire: update.JSP
n'ont pas d'EFFET sur l'élément dans la base de donnée!!
on m a dit que c'est un probleme de scope !! session / request !!!
est ce que klk un a une idée ladessus ?