Message_Sender

Fermé
mpady Messages postés 2 Date d'inscription vendredi 12 septembre 2014 Statut Membre Dernière intervention 6 octobre 2014 - 12 sept. 2014 à 17:51
 mpady - 21 sept. 2014 à 17:52
salut a tous !!!

je suis entrain de faire une apli en primefaces 4.0 avec eclipse kepler, mais en registrant dans ma classe client les messages de coonfirmation ne s'affiche pas correctement.
le seul message qui s'affiche est le premier. je voulais que lorsque le client se trouve deja dans la base de donne que le message approprie s'affiche, merci
voici mon code:

//Client bean

package mangedBeans;

import java.sql.ResultSet;
import java.sql.SQLException;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;

import conct.BdCon;

@ManagedBean
public class ClientBean {

private String nom;
private String prenom;
private String adresse;
private String phone;
private String mail;
private String infos,msg;


public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public String getInfos() {
return infos;
}
public void setInfos(String infos) {
this.infos = infos;
}
public String getNom() {
return nom;
}
public void setNom(String nom) {
this.nom = nom;
}
public String getPrenom() {
return prenom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public String getAdresse() {
return adresse;
}
public void setAdresse(String adresse) {
this.adresse = adresse;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getMail() {
return mail;
}
public void setMail(String mail) {
this.mail = mail;
}


public void Message_Sender(String Msg){
FacesMessage msg= new FacesMessage(Msg);
FacesContext.getCurrentInstance().addMessage(null, msg);

}

public boolean Search(){

ResultSet R;
boolean bool1 = false;

R=BdCon.Extraire_Donnees_Db("select nom_client,prenom_client,adresse_client,tel_client,mail_client "
+ " FROM client WHERE nom_client= "+nom+" AND prenom_client= "+prenom+" AND adresse_client= "+adresse+""
+ " AND tel_client= "+phone+" AND mail_client= "+mail+" ");

if(R!=null)
{
try {
while(R.first())
{
bool1=true;
return bool1;
}
} catch (SQLException e) {

e.printStackTrace();
}
}
System.out.println(bool1);
return bool1;
}

public void Enregistrer_Client(){

int a=0;
boolean bool2=Search();

if(bool2)
{
msg= "Le client nommé "+nom+" "+prenom+" existe deja !!! ";
Message_Sender(msg);
System.out.println("ahanahashitse");
return;
}
if(!bool2)
{
a=BdCon.Mise_A_jour_Db("insert into Client (nom_client,prenom_client,adresse_client,tel_client,mail_client)"
+ "values('"+this.nom+"', '"+this.prenom+"', '"+this.adresse+"', '"+this.phone+"' ,'"+this.mail+"') ");
if(a!=0){
msg= "Le client nommé "+nom+" "+prenom+" est enregistrer avec succès ";

}
else
msg= "Le client nommé "+nom+" "+prenom+" n'est pas enregistré avec succès ";


nom="";
prenom="";
adresse="";
phone="";
mail="";
}
Message_Sender(msg);
System.out.println(a);
}



}

2 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
12 sept. 2014 à 19:11
Bonjour,

Ce code ne peut pas marcher :
while(R.first()) 
{
bool1=true;
return bool1;
}
Au premier passage de la boucle tu sors de la méthode, la boucle ne sert donc à rien...
De plus first() devrait toujours renvoyer la même chose. Regarde plutôt next() qui va s'incrémenter au fur et à mesure et renvoyer false à la fin pour arrêter la boucle.
0
merci KX ca ma aide beaucoup
0