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 d'insertion de champs date stuts2 spring hibernate


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Par défaut probleme d'insertion de champs date stuts2 spring hibernate
    bonjour tout le monde, j’espère que vous pouvez m'aider :
    bon je travaille sur un projet en utilisant les framework struts2 spring hibernate et une base de donnée Mysql,j ai fait toutes la configuration nécessaire et j'arrive a me connecter à la base, et faire mes première manipulation ( ajout , modification suppression) mais quand je voulais ajouter un champs de type Date , ça fonctionne pas mais il peut l'afficher.merci d'avance

  2. #2
    Membre chevronné Avatar de ruscov
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2007
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2007
    Messages : 347
    Par défaut
    Code? Stacktrace complète?

  3. #3
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Par défaut
    Citation Envoyé par ruscov Voir le message
    Code? Stacktrace complète?
    Merci de l'intérêt que vous portez à ma question : pour le code le voilà

    Ma base de donnée :
    table panne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    	ID_PANNE 	int(11) 			
    	ID_EQUIPEMENT 	int(11) 			
    	DESCRIPTION_PANNE 	text 	
    	CAUSE_PROBABLE 	text 	
    	ETAT_PANNE 	text 	
    	DATE_PANNE 	date 			
    	defaillance 	text 	
    	EFFET 	text 	
    	MOYEN_DETECTION 	text 	
    	REMARQUE 	text
    ---------panne.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
    public class Panne 
    {
     
    	private long  ID_PANNE;
    	private long  ID_EQUIPEMENT;
    	private String DESCRIPTION_PANNE;
    	private String CAUSE_PROBABLE;
    	private String ETAT_PANNE;
    	private java.util.Date  DATE_PANNE;
    	private String EFFET;
    	private String MOYEN_DETECTION;
    	private String REMARQUE;
     
     
    	public java.util.Date getDATE_PANNE() {
    		return DATE_PANNE;
    	}
    	public void setDATE_PANNE(java.util.Date dATE_PANNE) {
    		DATE_PANNE = dATE_PANNE;
    	}
     
    	private String  defaillance;
    	public String getDefaillance() {
    		return defaillance;
    	}
    	public void setDefaillance(String defaillance) {
    		this.defaillance = defaillance;
    	}
     
    	public long getID_PANNE() {
    		return ID_PANNE;
    	}
    	public void setID_PANNE(long iD_PANNE) {
    		ID_PANNE = iD_PANNE;
    	}
    	public long getID_EQUIPEMENT() {
    		return ID_EQUIPEMENT;
    	}
    	public void setID_EQUIPEMENT(long iD_EQUIPEMENT) {
    		ID_EQUIPEMENT = iD_EQUIPEMENT;
    	}
    	public String getDESCRIPTION_PANNE() {
    		return DESCRIPTION_PANNE;
    	}
    	public void setDESCRIPTION_PANNE(String dESCRIPTION_PANNE) {
    		DESCRIPTION_PANNE = dESCRIPTION_PANNE;
    	}
    	public String getCAUSE_PROBABLE() {
    		return CAUSE_PROBABLE;
    	}
    	public void setCAUSE_PROBABLE(String cAUSE_PROBABLE) {
    		CAUSE_PROBABLE = cAUSE_PROBABLE;
    	}
    	public String getETAT_PANNE() {
    		return ETAT_PANNE;
    	}
    	public void setETAT_PANNE(String eTAT_PANNE) {
    		ETAT_PANNE = eTAT_PANNE;
    	}
     
    	public String getEFFET() {
    		return EFFET;
    	}
    	public void setEFFET(String eFFET) {
    		EFFET = eFFET;
    	}
    	public String getMOYEN_DETECTION() {
    		return MOYEN_DETECTION;
    	}
    	public void setMOYEN_DETECTION(String mOYEN_DETECTION) {
    		MOYEN_DETECTION = mOYEN_DETECTION;
    	}
    	public String getREMARQUE() {
    		return REMARQUE;
    	}
    	public void setREMARQUE(String rEMARQUE) {
    		REMARQUE = rEMARQUE;
    	}
    }
    ---------------------panne.hbm.xml----------
    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
    <hibernate-mapping>
     <class name="model.Panne" table="PANNE">
        <id name="ID_PANNE" column="ID_PANNE">
         <generator class="native">
        </generator>
       </id>
       <property name="ID_EQUIPEMENT" column="ID_EQUIPEMENT" type="long"/>
        <property name="DESCRIPTION_PANNE" column="DESCRIPTION_PANNE" type="string"/>
    	<property name="CAUSE_PROBABLE" column="CAUSE_PROBABLE" type="string" />
    	<property name="ETAT_PANNE" column="ETAT_PANNE" type="string" />
         <property name="DATE_PANNE" column="DATE_PANNE" type="date" />
        <property name="defaillance" column="defaillance" type="string" />
    	<property name="EFFET" column="EFFET" type="string" />
    	  <property name="MOYEN_DETECTION" column="MOYEN_DETECTION" type="string" />
        <property name="REMARQUE" column="REMARQUE" type="string" />
     
     </class>
    </hibernate-mapping>
    ---------------------------panne.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
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <s:form theme="simple" name="f" action="panneAction">
                        <table class="form">
                            <tr>
                            <td>
                                    <label>ID Panne</label>                            </td>
                                <td>
                                    <s:textfield  class="mini" name="ID_PANNE"/>                            </td>
     
                            </tr>
                            <tr>
                                <td>
                                    <label>ID equipement</label>                            </td>
                                <td>
                                    <s:textfield  class="mini" name="ID_EQUIPEMENT"/>                            </td>
                            </tr>
                            <tr>
                                <td>
                                    <label>Description panne :</label>                            </td>
                                <td><s:textfield  class="large"  name="DESCRIPTION_PANNE" size="70" /></td>
                            </tr>
                            <tr>
                                <td>
                                    <label>Cause probable</label>                            </td>
                                <td>
                                    <s:textfield  class="large"  name="CAUSE_PROBABLE" size="70" />                            </td>
                            </tr>
                            <tr>
                                <td>
                                    <label>Etat panne</label>                            </td>
                                <td><s:textfield  class="mini" name="ETAT_PANNE" />                            </td>
                            </tr>
                            <tr>
                                <td>
                                    <label>Date panne</label>                            </td>
                                <td><s:textfield  name="DATE_PANNE" format="yyyy-MM-dd" />   </td>
                            </tr>
     
     
                            <tr>
                                <td>
                                    <label>Type défaillance </label>                            </td>
                                <td>
                                    <s:textfield  class="mini" name="defaillance" />                            </td>
                            </tr>
                            <tr>
                                <td>
                                    <label>Effet de la panne </label>                            </td>
                                <td><s:textfield  class="mini" name="EFFET"  size="70"/> </td>
                            </tr>
                             <tr>
                                <td>
                                    <label>moyen de détection </label>                            </td>
                                <td><s:textfield  class="mini" name="MOYEN_DETECTION"  /> </td>
                            </tr>
                            <td class="col1">
                                    <label>Remarque</label>                            </td>
                                <td class="col2"><s:textfield  class="large" name="REMARQUE" size="70" /></td>
                        </table>
     
                        <table>
                        <td><tr> <s:submit     cssClass="btn btn-navy" method="AjoutPanne"        value="Ajouter" /></tr>
                      </table>
     
                        </s:form>
    -----------------------------registrepanne.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
    <table width="103%" height="114%" >
    <tr>           
    			  <td >ID_panne</td>
    			  <td >ID_equipement</td>
    			  <td >Description</td>
    			  <td >Cause probable </td>
                  <td >Etat panne</td>
                  <td >Date panne</td>
    			  <td >Type panne</td>
    			  <td >Effet </td>
                  <td >Moyen detection</td>
    			  <td >Remarque</td>
     
    </tr>
    				<tr >
    						<s:iterator value="savedPanneList">
     
     <tr > 
    		    <td ><s:property value="ID_PANNE" /></td>
    			<td ><s:property value="ID_EQUIPEMENT" /></td>
    			<td><s:property value="DESCRIPTION_PANNE" /></td>
    			<td><s:property value="CAUSE_PROBABLE" /></td>
    			<td><s:property value="ETAT_PANNE" /></td>
    			<td><s:date name="DATE_PANNE" format="yyyy-MM-dd" /></td>
    			<td><s:property value="defaillance" /></td>
    			<td><s:property value="EFFET" /></td>
    			<td><s:property value="MOYEN_DETECTION" /></td>
    			<td><s:property value="REMARQUE" /></td>
    			</tr>
    	</s:iterator></tr>
    			</table>
    -----------------------------------PanneAction.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
    public class PanneAction extends ActionSupport implements ModelDriven<Panne>
    {
     
    	private Panne panne=new Panne();
    	private long ID=panne.getID_PANNE();
    	private PanneDAO panneDAO;
    	List<Panne> savedPanneList = new ArrayList<Panne>();
     
     
    	public Panne getModel() {
    		return panne;
    	}
     
     
    	public String execute() throws Exception {
    		panneDAO.saveOrUpdate(panne);
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";}
     
    	public String AjoutPanne() throws Exception {
    		panneDAO.saveOrUpdate(panne);
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";}
     
    	public String RecherchePanne() throws Exception {
    		panneDAO.recherche(panne.getID_PANNE());
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";}
     
     
    	public String Delete() throws Exception {
    		panneDAO.Delete(panne.getID_PANNE());
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";
     	}
    	public String Update() throws Exception {
    		panneDAO.Update(panne);
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";
     	}
     
     
     
     
    	public String liste() throws Exception {
    		savedPanneList=panneDAO.fetchAllPanne();
    		return "successView";
     	}
     
    	public List<Panne> getSavedPanneList() {
    		return savedPanneList;
    	}
     
    	public void setSavedPanneList(List<Panne> savedPanneList) {
    		this.savedPanneList = savedPanneList;
    	}
     
    	public void setPanneDAO(PanneDAO panneDAO) {
    		this.panneDAO = panneDAO;
    	}
     
     
    	public Panne getPanne() {
    		return panne;
    	}
     
    	public void setPanne(Panne panne) {
    		this.panne= panne;
    	}
     
     
     
    }
    --------------------PanneDAo.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
    public class PanneDAO   {
     
    	private HibernateTemplate hibernateTemplate;
     
    	public HibernateTemplate getHibernateTemplate() {
    		return hibernateTemplate;
    	}
     
    	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
    		this.hibernateTemplate = hibernateTemplate;
    	}
     
    	public void saveOrUpdate(Panne panne) {
     
    		hibernateTemplate.save(panne);
    	}
     
    	public void Delete(long id) {
    		Object record = hibernateTemplate.load(Panne.class, id);
    		hibernateTemplate.delete(record);
     
    	}
    	public void Update(Panne panne ) {
     
    		hibernateTemplate.update(panne);
    	}
     
     
    	public void recherche(long id)
    	{
    		hibernateTemplate.find("select * from panne where ID_PANNE = ?");
    	}
     
    	public List<Panne> fetchAllPanne() {
    		return hibernateTemplate.loadAll(Panne.class);
    	}
     
     
    }
    ----------------------struts.xml--------------
    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
    <struts>
        <package name="myPack" extends="struts-default">
            <action name="panneAction" class="panneActionBean"     method="AjoutPanne">
                <result name="successView">/ajouterPanne.jsp</result>
            </action>
            <action name="panne" class="panneActionBean"     method="liste">
                <result name="successView">/ajouterPanne.jsp</result>
            </action>
     
            <action name="registrepanne" class="panneActionBean"     method="liste">
                <result name="successView">/RegistrePanne.jsp</result>
            </action>
     
     
     
            <action name="panneAction" class="panneActionBean" method="Update">
                <result name="successView">/ajouterPanne.jsp</result>
            </action>
     
            <action name="panneAction" class="panneActionBean" method="Delete">
                <result name="successView">/ajouterPanne.jsp</result>
            </action>
     
     
            <action name="panneAction" class="panneActionBean" method="VisualiserPanne">
                <result name="successView">/ajouterPanne.jsp</result>
            </action>
     
     
        </package>
    </struts>
    --------------------------------------------------

    NB: Ça fonctionne très bien avec l'affichage mais j'ai le probleme lors de l'insertion et je ne sais pas quoi faire.

  4. #4
    Membre chevronné Avatar de ruscov
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2007
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2007
    Messages : 347
    Par défaut
    C'est quoi l'erreur?

  5. #5
    Membre averti
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 12
    Par défaut
    Citation Envoyé par ruscov Voir le message
    C'est quoi l'erreur?
    l'erreur est comme suit :
    WARNING: Error setting value
    ognl.MethodFailedException: Method "setDATE_PANNE" failed for object model.Panne@1d055e2 [java.lang.NoSuchMethodException: setDATE_PANNE([Ljava.lang.String]

    /-- Encapsulated exception ------------\
    java.lang.NoSuchMethodException: setDATE_PANNE([Ljava.lang.String

    NBDATE_PANNE --> c'est le champs de type date)

    apparemment et d'après ce que j'ai compris struts a bien pris la date comme un String chose qu il doit pas le faire, et je sai pas comment le régler je suis débutante en ceci merci beaucoup pr votre aider

  6. #6
    Membre chevronné Avatar de ruscov
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2007
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2007
    Messages : 347
    Par défaut
    Dans ta JSP utilises le tag s:date

Discussions similaires

  1. Réponses: 1
    Dernier message: 31/03/2011, 18h16
  2. [SPRING][HIBERNATE][MYSQL] insert et valeur des champs.
    Par nikalkal dans le forum Hibernate
    Réponses: 9
    Dernier message: 27/04/2006, 14h07
  3. Probleme de requete SQL avec un champs date
    Par ju360modena dans le forum ASP
    Réponses: 5
    Dernier message: 16/06/2005, 11h18
  4. Réponses: 2
    Dernier message: 22/07/2004, 00h27

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