[Oracle] Problème de clé étrangére
alut tout le monde je suis en train de développer une application web avec hibernate et jsf.Mais j'ai l'erreur suivante lors de l'insertion d'une clé étrangére:j_idt8:nomZone : erreur de validation. La valeur est incorrecte.
j'ai 2 tables zone et complexe ,complexe fait référence a zone .
Voila le code :
GenerivConverter.java
Code:
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
|
package fr.code.parc.controller;
import fr.code.parc.dao.ZoneDao;
import fr.code.parc.dao.ZoneDaoImpl;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
/**
*
* @author raddaouirami
*/
@ManagedBean
@ViewScoped
public class GenericConverter implements Converter, Serializable {
ZoneDao dao = new ZoneDaoImpl();
private Map <UUID, Object> temporaryStore = new HashMap <UUID, Object> ();
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
System.out.println("ici "+temporaryStore.get(UUID.fromString(value)));
return temporaryStore.get(UUID.fromString(value));
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
UUID id = UUID.randomUUID();
temporaryStore.put(id, value);
return id.toString(); }
} |
ZoneController.java
Code:
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
|
package fr.code.parc.controller;
import fr.code.parc.dao.ZoneDao;
import fr.code.parc.dao.ZoneDaoImpl;
import fr.code.parc.model.ZoneParc;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;
import javax.faces.model.SelectItem;
/**
*
* @author raddaouirami
*/
@ManagedBean
@SessionScoped
public class ZoneController {
/**
* Creates a new instance of ZoneController
*/
private ZoneParc zone;
private Set<ZoneParc> zn;
private DataModel listeZones;
private Hashtable htzone = new Hashtable();
private List zonelist = new ArrayList();
private List<SelectItem> mesElements;
private String maValeur;
ArrayList<String> list = new ArrayList<String>();
ZoneDao dao = new ZoneDaoImpl();
public DataModel getListeZones() {
List<ZoneParc> liste = new ZoneDaoImpl().list();
listeZones = new ListDataModel(liste);
return listeZones;
}
public ZoneParc getZone() {
return zone;
}
public void setZone(ZoneParc zone) {
this.zone = zone;
}
public String preparationAddZone(){
setZone(new ZoneParc());
return "zone";
}
public String preparationEditZone(){
setZone((ZoneParc) (getListeZones().getRowData()));
return "zone";
}
public String DeleteZone(){
ZoneParc users = (ZoneParc)(getListeZones().getRowData());
dao.remove(users);
return "index";
}
public String SaveZone(){
dao.save(getZone());
return "index";
}
public String UpdateZone(){
dao.update(zone);
return "index";
}
/**
* @param mesElements the mesElements to set
*/
/**
* @return the maValeur
*/
public String getMaValeur() {
return maValeur;
}
/**
* @param maValeur the maValeur to set
*/
public void setMaValeur(String maValeur) {
this.maValeur = maValeur;
}
public Hashtable remplireItem()
{
htzone.clear();
zonelist.clear();
List l = dao.list();
for (Iterator it = l.iterator(); it.hasNext();){
ZoneParc zone= (ZoneParc) l.get(l.indexOf(it.next()));
zonelist.add(zone.getNomZone());
htzone.put(zone.getNomZone(), zone);
}
return htzone;
}
} |
et dernièrement le code du Test
Code:
1 2 3 4
| Génération des Complexes
Nom Complexe:
Nom Zone: |