[Struts]Probleme récupération de la valeur d'un html:select

Probleme récupération de la valeur d'un html:select [Struts] - Java - Programmation

Marsh Posté le 25-12-2007 à 12:43:17    

Bonjour !
Tout d'abord joyeuses fêtes à tous :)
 
Passons aux choses sérieuses  :p  
Voilà le code qui me pose probleme :

Citation :


<html:select name="domaine" property="enti_codeId.codeId"  style="width: 300;">
 <html:optionsCollection name="entites" label="nom" value="codeId" />
</html:select>


 
Comment récupérer coté métier la valeur sélectionnée dans le select ?
Sachant qu'un domaine est reliée à une entité par un many-to-one sur le champs "enti_codeId".
Ici, mon optionsCollection name="entites" correspond donc à la liste de toutes les entités, et mon select name="domaine" property="enti_codeId.codeId" sélectionne la bonne entité à sélectionner pour le domaine en cours au chargement de la page.
 
Voilà mon form-bean du struts-config :

Citation :


<form-bean  
 name="form_test"        
   type="org.apache.struts.validator.DynaValidatorForm"  
   >                    
   ...
   <form-property name="enti_codeId.codeId" type="java.lang.Integer" initial="" />
</form-bean>


 
et coté métier :

Citation :

Integer entiteId = (Integer)formulaire.get("enti_codeId.codeId" );


 
J'obtiens cette erreur :

Citation :

org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.generali.hibernate.tables.Entites#0]


 
Si quelqu'un a une idée ;)

Reply

Marsh Posté le 25-12-2007 à 12:43:17   

Reply

Marsh Posté le 27-12-2007 à 13:21:47    

tu as remarqué que tu te ramassait une Exception venant de Hibernate ?


Message édité par brisssou le 27-12-2007 à 13:21:56

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 27-12-2007 à 20:49:05    

Oui, l'exception en fait vient du fait que j'essaye de loader plus loin un objet avec l'Integer que je recupere (entiteId). Comme je recupere 0 quoiqu'il arrive avec le code que j'ai mis au dessus, et qu'il n'existe pas un objet avec un id à 0, Hibernate me crache cette erreur.
 
Désolé, j'aurais du le préciser.
 
J'ai trouvé une méthode pour contourner le probleme, je ne déclare plus le select dans le form-bean, et je récupère la valeur grace au request.getParameter("enti_codeId.codeId" ); et ça fonctionne.
J'aimerai quand même bien trouvé la solution avec un form-bean.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed