IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

aide sur la mise à jour


Sujet :

Struts 1 Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut aide sur la mise à jour
    bonjour, je suis débutante en j2ee et j'ai une application struts et voici mon problème: j'ai un tableau qui affiche certaines informations d'une table: chaque ligne de ce tableau contient un lien, qui devait normalement, aller vers une page jsp qui affiche toutes les informations de l'enregistremnt spécifié avec une possiblité de mise à jour.je récupère l'id de l'enregistrement lors du clic maisje ne sais pas l'utiliser dans la page jsp qui ne le reconnait pas. si quelqu'un a des idées sur ce problème, merci de les partager avec moi

  2. #2
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Comment récupères-tu cet id ?
    Ton lien redirige-t'il directement sur une jsp ou sur une Action ?

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    voici le code du lien:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <logic:iterate id="projet" name="collect" offset="0" length="25">
    .....
     
                            <a href="/projet/edit.do?id_fiche=<bean:write name="projet" property="num" />"> <img src="images/mod.gif" width="24" height="24" border="0"></a></td>
                              <td width="24"><a href="/projet/delete.do?id_fiche=<bean:write name="projet" property="num" />"> <img src="images/suppr.gif" onClick = "return confirm('Voulez vous vraiment supprimer le projet?');" width="24" height="24" border="0"></td>
                            </tr>
                          </logic:iterate>
    que dois je faire exactement dans l'action edit pour remplir la jsp?

  4. #4
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Pour récupérer le paramètre id_fiche dans l'Action, il suffit de coder ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String id_fiche = request.getParameter("id_fiche") ;

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    oui, je sais. mais je sais pa comment faire pour remplir la jsp correspondante voici le code de editAction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    			HttpServletRequest request, HttpServletResponse response) {
    		// TODO Auto-generated method stub
    		ficheForm formulaire = (ficheForm) form;
    		int i=Integer.parseInt(request.getParameter("id_fiche"));
    		System.out.println(i);
    		HttpSession session = request.getSession();
     
    		projet fiche=new projet();
    		projetDAO ficheDAO=new projetDAO();
    		org.hibernate.Transaction tx= projetDAO.getSession().beginTransaction();
    		projet=projetDAO.findById(i);
    		formulaire.setNum_fiche(String.valueOf(fiche.getNumFiche()));
    		formulaire.setNum_enquete(fiche.getNumEnquete());
    		form=formulaire;
    		session.setAttribute(mapping.getAttribute(),form);
    		 return mapping.findForward("succes");
    	}
    mais je trouve la page jsp non remplie lors de l'exécution et je sais pas ce ki cloche dans mon code.
    merci

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 372
    Points : 239
    Points
    239
    Par défaut
    Vu que ton lien est du type je suppose que tu passes donc par une action.
    Dans l'action qui correspond à ton mapping entre event.do et l'action qui lui correspond (dans le struts-config.xml), tu récupères les paramètres que tu as précédemment placés dans une url en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    String id = request.getParameter("id_fiche");
    String cible="success"; // cible de redirection par défaut
    if(){ // test si tes paramètres en url, ou autre chose est cohérent
    ...
    // tout est ok => on redirige vers un truc :
    cible="toutEstOk";
    }
    else{
    // problème => on redirige vers une pag d'erreurs
    ActionErrors errors = new ActionErrors();
    				  	      	errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.problemofxxxxx")); // clé correspondant au message d'erreur dans le fichier de ressources
    				  	      	if(!errors.isEmpty())
    				  	      		saveErrors(request,errors);
    cible="pageErreurs";
    }
    return (mapping.findForward(cible));
    et dans le struts config tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <action path="/actiontruc" type="action.ActionTruc">
          <forward name="succes" path="/jsp/pagesuccess.jsp"/>
          <forward name="toutEstOk" redirect="true" path="/tapage.jsp"/>
          <forward name="pageErreurs" path="/jsp/errors.jsp"/>
        </action>
    et ton truc errors.jsp doit contenir:

  7. #7
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Il faut supprimer ces deux lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    		form=formulaire;
    		session.setAttribute(mapping.getAttribute(),form);
    Le form-bean est automatiquement mis dans le scope spécifié dans le mapping de l'Action dans le struts-config.xml.
    Il ne faut donc pas faire de session.setAttribute sur le form-bean.

    Sinon, je te conseille de respecter les conventions de nommage java.
    Il serait donc mieux de renommer num_fiche en numFiche, num_enquete en numEnquete dans ton ActionForm et l'ActionForm ficheForm en FicheForm.

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 372
    Points : 239
    Points
    239
    Par défaut
    Bah tu veux afficher quoi? => fais voir ton code jsp de ta page qui n'affiche pas ce que tu voudrais stp?

Discussions similaires

  1. besoin d'aide serveur ODBC mise à jour
    Par Ludo_360 dans le forum Delphi
    Réponses: 3
    Dernier message: 16/05/2007, 09h15
  2. Aide sur la mise en place en réseau de PC
    Par NELAIN dans le forum Administration
    Réponses: 2
    Dernier message: 10/04/2007, 18h24
  3. Réponses: 1
    Dernier message: 18/09/2006, 19h27
  4. Erreur sur Requête Mise à Jour
    Par guenfood dans le forum Access
    Réponses: 1
    Dernier message: 06/06/2006, 08h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo