Les Allergies
Alimentaires
Posez votre question Signaler

J2EE Struts problème <bean:write>

philog - Dernière réponse le 29 avril 2008 à 09:42
Bonjour,
Voila je suis débutant en J2EE avec Struts + Hibernate et je n'arrive pas à afficher un objet user dans ma page jsp en utilisant <bean:write>
J'ai une erreur type:
org.apache.jasper.JasperException: Cannot find bean: "usa" in scope: "session"
Voici le code de ma page jsp:
Code :
<bean:define id="usa_id" name="usa" scope="session" type="test.javabeans.Usager"/>
<bean:write name="usa_id" property="nom"/><br>
<bean:write name="usa_id" property="prenom"/><br>
et le code de mon UsagerAction
Code :
public class UsagerAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception{
UsagerDAO user = new HibernateDAOFactory().getUsagerDAO();
DynaValidatorForm dynaForm = (DynaValidatorForm) form;
request.getSession().setAttribute("usa",user.findUsagerDAO(dynaForm.getString("nom")));
return mapping.findForward("affiche");
}
}
J'ai déja testé un insert et un affichage complet de ma table: ca fonctionne
Par contre, avec ma méthode findUsagerDAO(...) qui me retourne un objet type Usager, je n'arrive pas à l'afficher...?
Je dois surement faire une erreur dans la déclaration de mon <bean:write> ou dans l'envoi de mon objet user....
Si quelqu'un à une solution ? merci d'avance...
Lire la suite 

J2EE Struts problème <bean:write> »

3 réponses
Réponse
+1
moins plus
Bonjour,

Pour ma part j'ai plus l'habitude d'utiliser <nested:write> plutot que <bean:write>
Si tu essai de remplacer :

<bean:define id="usa_id" name="usa" scope="session" type="test.javabeans.Usager"/>

<bean:write name="usa_id" property="nom"/><br>
<bean:write name="usa_id" property="prenom"/><br> 


Par :


<nested:present name="usa">
        <nested:write name="usa" property="nom"/>
        <nested:write name="usa" property="prenom"/>
</nested:present>


ça donne quoi ?

Sinon, il est peut être possible que la fonction findUsagerDAO() retourne la valeur null (non trouvé par rapport à ce que retourne dynaForm.getString(&q­uot;nom")) et du coup ton bean n'est pas instancié en session.
Pour vérifier ça essai de mettre une trace du genre dans ta fonction :
if ( user.findUsagerDAO(dynaForm.getString("nom")) == null )
     System.out.println("NOT FOUND");
request.getSession().setAttribute("usa",user.findUsagerDAO(dynaForm.getString(&q­uot;nom"))); 

Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Quel sorte d'erreur est ce que tu as à la compilation, peux-tu mettre cette erreur ici pour qu'on la voit.
Sans ça on ne pourra rien pour toi.
Ajouter un commentaire
Réponse
-2
moins plus
bonjour
chuis debutan avaec java struts et la ou j'etudi le prof ns oblige d'utilisé my sql et appach je les instalé g le vista et g des problem dans la compilation
donc veuillez m'xpliqé d'ou arrive les problem et de koi me conseillez vous
merci
Ajouter un commentaire
Ce document intitulé « J2EE Struts problème <bean:write> » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?