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 :

probleme avec les struts


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut probleme avec les struts
    j'ai creé une page jsp pour valider une table de la base donné et l'afficher dans cette page.
    et une action pour fair le traitement .
    je travaille sous eclipse et myeclipse et tomcat.urgant
    voila le code jsp:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    <%@ page language="java" pageEncoding="ISO-8859-1"%>
     
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-template" prefix="template" %>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-nested" prefix="nested" %>
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html:html locale="true">
      <head>
        <html:base />
     
        <title>index.jsp</title>
     
    	<meta http-equiv="pragma" content="no-cache">
    	<meta http-equiv="cache-control" content="no-cache">
    	<meta http-equiv="expires" content="0">    
    	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    	<meta http-equiv="description" content="This is my page">
    	<!--
    	<link rel="stylesheet" type="text/css" href="styles.css">
    	-->
     
      </head>
     
      <body>
      <form action="/login">
     <table border="1">
    <tr>
    <td>Id Software</td>
    <td>designation</td>
    <td>reference</td>
     
     
    </tr>
     
    <logic:iterate id="MATERIEL" name="MATERIEL" scope="request">
    <tr>
    <td><bean:write name="MATERIEL" property="software.MATERIEL_ID"/></td>
    <td><bean:write name="MATERIEL" property="software.DESIGN_MAT"/></td>
    <td><bean:write name="MATERIEL" property="software.REFERENCE_MAT"/></td>
     
    </tr>
    </logic:iterate>
    </table>
     
    </logic:notEmpty>
    </form>
     
     
      </body>
    </html:html>
    ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
    << loginAction.java>>
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    /*
     * Generated by MyEclipse Struts
     * Template path: templates/java/JavaClass.vtl
     */
    package com.apache.struts.action;
     
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
     
    import com.apache.struts.form.LoginForm;
     
    import java.sql.*;
    import java.util.*;
     
    /**
     * MyEclipse Struts
     *
     *
     * XDoclet definition:
     * @struts.action attribute="MaterielForm" input="/Index.jsp" parameter="do" scope="request" validate="true"
     * @struts.action-forward name="delet" path="/delet.do" contextRelative="true"
     * @struts.action-forward name="Edit" path="/Edit.do" contextRelative="true"
     */
    public class LoginAction extends Action {
     
    Connection conn=null;
    ResultSet res=null;
    Statement st=null;
     
     public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) throws Exception {
     
     
     
            System.out.println("--------------- MaterielAction ");
            request.setAttribute("MATERIEL",getMateriels());
            return (mapping.findForward("success"));
        }
     
     
    /*public void MaConnexion() throws SQLException
    {
    	try
    		{
    			Class.forName("oracle.jdbc.driver.OracleDriver");
    			String db="jdbc:oracle:thin:@localhost:1521:LOGISOFT";
    			conn=DriverManager.getConnection(db,"system","oracle");
    		}
    	catch(ClassNotFoundException cnfe)
    		{
    			System.err.println(cnfe);
    		}
    }*/
    public ArrayList getMateriels()
    {
     
    	try
    		{
    			Class.forName("oracle.jdbc.driver.OracleDriver");
    			String db="jdbc:oracle:thin:@localhost:1521:logisoft";
    			conn=DriverManager.getConnection(db,"system","oracle");
     
    			ArrayList<LoginForm> list=new ArrayList<LoginForm>();
    			if(conn!=null){
    				st=conn.createStatement();
    				res=st.executeQuery("SELECT * from MATERIEL");
    				LoginForm form=null;
    				while(res.next()){
    					form=new LoginForm();
    					form.setMATERIEL_ID(res.getInt(1));
    					form.setDESIGN_MAT(res.getString(2));
    					form.setREFERENCE_MAT(res.getString(3));
    					list.add(form);
    				}
    			}else System.out.println("Pas de connexion : conn == null");
     
     
    			return list;
    		}
    	catch(Exception e)
    	    {
    			e.printStackTrace();
    			return new ArrayList();
    	}
    }
     
    }
     
    /**/
     
     
     
     
     
     
     
     
     
     
     
     
     
     
            /**
             * Method execute
             * @param mapping
             * @param form
             * @param request
             * @param response
             * @return ActionForward         */

  2. #2
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    Bonjour,
    j'ai comme un doute d'avoir mal lu, mais quel est le problème ??? message d'erreur ?

  3. #3
    Expert confirmé

    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
    Par défaut
    Il faut bien distinguer les ActionForm des JavaBeans.
    Si dans ton Action, LoginForm est une ActionForm, il ne faut pas constituer une ArrayList de LoginForm.

    Il faudrait plutôt créer une classe Java, que tu pourrais appeler Materiel, avec getter et setter sur les propriétés de la table materiel et dans ton Action, créer une ArrayList de beans Materiel et non une ArrayList de LoginForm.

    Ensuite, dans ta jsp, à quoi correspond software ?

    Tu devrais avoir plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <logic:iterate id="MATERIEL" name="MATERIEL" scope="request">
    <tr>
    <td><bean:write name="MATERIEL" property="MATERIEL_ID"/></td>
    <td><bean:write name="MATERIEL" property="DESIGN_MAT"/></td>
    <td><bean:write name="MATERIEL" property="REFERENCE_MAT"/></td>
     </tr>
    </logic:iterate>
    De plus, je te conseille de respecter les conventions de nommage java, soit plus précisément celle sur les propriétés : elles doivent commencer par une minuscule et si elles sont composées de plusieurs mots, une majuscule à chaque nouveau mot.
    Donc, tu pourrais par exemple renommer MATERIEL_ID en idMat, DESIGN_MAT en designMat et REFERENCE_MAT en referenceMat.

  4. #4
    Membre confirmé Avatar de piogo113
    Inscrit en
    Juin 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2006
    Messages : 230
    Par défaut
    merci bcq pour votre reponse.
    mon probleme que j'ai une table qui s'appelle MATERIEL qui a 3 champs (MATERIEL_ID,DESIGN_ID,REFERENCE_MAT) dans une base de donné oracle
    et je veux faire la selection de la table dans une page jsp avec la technologie struts .je suis debutantet je sais pas comment faire.
    si vous pouvez me donné le code source ca va etre trop aimable de votre part
    parce que je prepare mon pfe et c est urgant

  5. #5
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Citation Envoyé par piogo113
    si vous pouvez me donné le code source ca va etre trop aimable de votre part
    parce que je prepare mon pfe et c est urgant
    Ce n'est pas trop le but de ce forum dsl

  6. #6
    Expert confirmé

    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
    Par défaut
    Bon, allez, on va t'aider un peu.

    Tu crées une classe Java qui s'appelle Materiel dans laquelle tu définis par exemple les propriétés id, design et reference et tu codes les getter et setter sur chacune de ces propriétés.
    ça, tu dois savoir faire non ?

    Ensuite, dans ton Action, tu remplaces LoginForm par Materiel et tu modifies les setters en conséquence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    		ArrayList<Materiel> list=new ArrayList<Materiel>();
    		Materiel materiel = null;
    		while(res.next()) {
    			materiel =new Materiel();
    			materiel.setId(res.getInt("MATERIEL_ID"));
    			materiel.setDesign(res.getString("DESIGN_MAT"));
    			materiel.setReference(res.getString("REFERENCE_MAT"));
    			list.add(materiel );
    		}
    et dans la jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <logic:iterate id="materiel" name="MATERIEL" scope="request">
    <tr>
    <td><bean:write name="materiel" property="id"/></td>
    <td><bean:write name="materiel" property="design"/></td>
    <td><bean:write name="materiel" property="reference"/></td>
     </tr>
    </logic:iterate>

Discussions similaires

  1. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  2. PROBLEME AVEC LES REQUETES IS NULL / NOT EXISTS
    Par sylvaine dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/06/2004, 13h26
  3. [langage] probleme avec les listes dans des listes
    Par pqmoltonel dans le forum Langage
    Réponses: 7
    Dernier message: 27/04/2004, 12h32
  4. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/08/2003, 22h50
  5. probleme avec les processus
    Par saidi dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/02/2003, 00h18

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