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 Struts et Hibernate


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par défaut Probleme avec Struts et Hibernate
    Bonjour à tous,
    Voila, je travaille actuellement sur un projet d'entreprise qui doit servir à la gestion des clients et de leurs commande.
    J'ai décidé de travailler avec struts et hibernate.
    Pour commencer, j'ai développer la couche métier et le mapping avec hibernate.
    Jusque là, tout se passe bien.
    Maintenant je doit afficher les information avec Struts.

    Voila comment j'ai procéder. Je vais prendre un exemple d'ajout du client

    Classe Client
    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
     
    public class Client {
     
    	//*********************** Attributes**************************//
    	private Long id;
    	private String numClient;
    	private String nomSociete;
    	private SecteurActivite activite;
    	private String registreCommerce;
    	private SegmentL1 segmentL1;
    	private SegmentL2 segmentL2;
    	private String patente;
    	private String telecopie;
    	private String siteWeb;
    	private boolean status=true;
    	private String loginExtranet;
    	private boolean partenaire;
    	private int nbCommercial;
    	private EmailAdresse email;
    	private Adresse adresse;
    	private Telephone telephone;
    	private Set<Site> sites= new HashSet<Site>();
    	private Set<Compte> comptes= new HashSet<Compte>();
    	private Set<Contact> contacts= new HashSet<Contact>();
    	private Date created= new Date();
     
          //+ getters et setter et les constructeur
    Je veux donc créer une page jsp qui va contiendra un formulaire et stocker les information sur la bdd.

    J'ai dans Ma classe GestMetier deux méthodes qui me permettent d'ajouter un client

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public void addClient(Client client){
    		Session session=HibernateUtil.sessionFactory.getCurrentSession();
    		session.beginTransaction();
    		session.save(client);
    		session.getTransaction().commit();
    	}
    	public Client addClient(String numClient, String nomSociete, 
    			String registreCommerce, String patente, String telecopie,
    			String siteWeb, String loginExtranet,
    			boolean partenaire, int nbCommercial, EmailAdresse email,
    			Adresse adresse, Telephone telephone){
    ..............
            }
    Dans mon FormBean que j'appelle ClientForm je met
    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
    public class ClientForm extends ActionForm{
    	private Long id=new Long(1);
    	private String numClient="";
    	private String nomSociete="";
    	private String registreCommerce="";
    	private String patente="";
    	private String telecopie="";
    	private String siteWeb="";
    	private boolean status=true;
    	private String loginExtranet="";
    	private boolean partenaire=false;
    	private int nbCommercial=0;
    	private EmailAdresse email= new EmailAdresse();
    	private Adresse adresse= new Adresse();
    	private Telephone telephone= new Telephone();
    Dans mon ActionForm que j'ai nommé ClientAction je met

    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
    public class ClientAction extends Action{
    	public ActionForward execute(ActionMapping mapping, ActionForm form,
    		      HttpServletRequest request, HttpServletResponse response)
    		      throws IOException, ServletException {
    		ClientForm clientForm = (ClientForm) form;
    		Client client= new Client();
    		client.setNumClient(clientForm.getNumClient());
    		client.setNomSociete(clientForm.getNomSociete());
    		client.setRegistreCommerce(clientForm.getRegistreCommerce());
    		client.setPatente(clientForm.getPatente());
    		client.setTelecopie(clientForm.getTelecopie());
    		client.setSiteWeb(clientForm.getSiteWeb());
    		try{
    			Session session = HibernateUtil.getSessionFactory().getCurrentSession();			 
    			session.beginTransaction();
     
    			GestMetier gm= new GestMetier();
    			gm.addClient(client);
     
    			session.getTransaction().commit();
    		}catch (Exception e) {
    			HibernateUtil.getSessionFactory().close();
    			String resultat = "echec";
    		}
     
     
    		return mapping.findForward("client");
    	}
    }
    Je configure mon fichier struts-config.xml et web.xml

    et je crée la page jsp Client.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
     
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    		<title>Formulaire Client</title>
    	</head>
    	<body>
    		<hr>
    		<h1> Profil Client </h1>
     
    		<html:form  action="client.do" name="clientForm" type="org.wana.struts.ClientForm">
    			<fieldset id="societe">
    				<legend>Informations sur la Société</legend>
    				<p>
    					<label for="edtNumClient" accesskey="N"> Numéros Client</label>
    					<html:text name="clientForm" property="numClient"></html:text>
    				<p>
    				<p>
    					<label for="edtSociete" accesskey="S"> Nom Société</label>
    					<html:text name="clientForm" property="nomSociete"></html:text>
    				<p>
    				<p>
    					<label for="edtRegistreCommerce" accesskey="R"> Registre de commerce</label>
    					<html:text name="clientForm" property="registreCommerce"></html:text>
    				<p>
    				<p>
    					<label for="edtPatente" accesskey="P"> Patente</label>
    					<html:text name="clientForm" property="patente"></html:text>
    				<p>
    				<p>
    					<label for="edtPartenaire" accesskey="K"> Partenaire</label>
    					<html:radio name="clientForm" property="partenaire" value="true">Oui</html:radio>
    					<html:radio name="clientForm" property="partenaire" value="false">Non</html:radio>
    				<p>
    			</fieldset>
    			<html:submit value="ajouter" ></html:submit>
    		</html:form>
     
    	</body>
    </html>
    Remarque j'ai pas mis tout les champs vu que je suis juste entrain de tester

    Aprés tous ceci, rien ne marche. je pense que le problème se situe au niveau de l'ActionForm mais je ne vois pas comment le résoudre.

    Merçi de bien vouloir m'aider car je suis totalement perdu et je doit rendre une maquette pour demain!!!

  2. #2
    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
    Si tu veux de l'aide, il faudrait préciser ce qui ne fonctionne pas : l'affichage ? la soumission du formulaire ?
    As-tu un message d'erreur ?

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par défaut
    Bon j'arrive a afficher ma page Client.jsp
    mais quand je clic sur le bouton ajouter ca bloc et il n'y a rien qui se passe.

  4. #4
    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
    As-tu bien défini un forward de name client dans le mapping de l'Action ClientAction dans le struts-config.xml ?

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2008
    Messages : 101
    Par défaut
    oui c'est fait voila mont fichier struts-config.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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
    "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
     
    <struts-config>
    	<form-beans>
    		<form-bean name="clientForm" type="org.wana.struts.ClientForm"/>
    	</form-beans>
    	<global-forwards>
    		<forward name="client" path="/Vues/Client.jsp"></forward>
    	</global-forwards>
    	<action-mappings>
    		<action 
    			path="/client"
    			name="clientForm"
    			type="org.wana.struts.ClientAction"
    			scope="request">
                            <forward name="succes" path="/Vues/success.jsp"></forward>
                   </action>
    	</action-mappings>
     
    </struts-config>

  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
    Tu n'as pas défini d'attribut input dans le mapping de ton Action.
    Il faut y préciser la page vers laquelle tu veux être redirigé en cas d'erreur de validation.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Encore des problemes avec struts/hibernate
    Par Syham dans le forum Struts 1
    Réponses: 8
    Dernier message: 16/03/2008, 22h41
  2. probleme avec struts+hibernate
    Par crossmen dans le forum Struts 1
    Réponses: 5
    Dernier message: 23/05/2007, 19h18
  3. probleme avec struts+hibernate
    Par crossmen dans le forum Struts 1
    Réponses: 3
    Dernier message: 17/05/2007, 19h07
  4. Réponses: 1
    Dernier message: 08/06/2006, 18h55
  5. [Struts] Problème avec struts-config.xml
    Par The_freeman dans le forum Struts 1
    Réponses: 6
    Dernier message: 29/01/2006, 22h55

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