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 :

Struts layout MenuRepository


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Inscrit en
    Avril 2005
    Messages
    750
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 750
    Par défaut Struts layout MenuRepository
    Bonjour à tous,
    voila j'ai un problème, pour ne pas changer .je voudrais juste créer un arbre simple en utilisant <layout:treeview>, je créé mes menu dans une action
    Voici mon code
    Action
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    			HttpServletRequest request, HttpServletResponse response)
    	throws Exception {
    MenuComponent treeviewComponent= new MenuComponent();
    			 String treeComponentName = treeForm.getRoot().getNodeName();
    			 treeviewComponent.setName(treeComponentName);
    			 treeviewComponent.setTitle(treeComponentName);
    			 request.setAttribute("treeComponentName", treeComponentName);
    			 ((MenuRepository)request.getSession().getAttribute(MenuRepository.MENU_REPOSITORY_KEY)).addMenu(treeviewComponent);
    			 LayoutUtils.addMenuIntoSession(request, treeviewComponent);
    et dans ma jsp j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <layout:treeview>
    <layout:menuItem name="${treeComponentName}"/>
    </layout:treeview>
    et voici le message quej'ai :[/B][/B][/B] [ServletException in:/treeBuildAction.do] Menu repository not found'
    Peut etre un problème de configuration je ne sais pas vraiment si quelqu'un a une idée merci.

  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
    Fais un test après avoir supprimé cette ligne dans ton Action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ((MenuRepository)request.getSession().getAttribute(MenuRepository.MENU_REPOSITORY_KEY)).addMenu(treeviewComponent);
    car ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LayoutUtils.addMenuIntoSession(request, treeviewComponent);
    suffit pour ajouter le treeview dans le repository des menus.

    Et dans la jsp, ceci aussi doit suffire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <layout:treeview name="${treeComponentName}"/>

  3. #3
    Inactif  
    Inscrit en
    Avril 2005
    Messages
    750
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 750
    Par défaut
    En fait le problème c'est que je voudrais construire l'arbre dynamiquement :
    donc voici mes la jsp que mon action forward
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <nested:form action="/treeBuildAction">
      	<layout:treeview>
      		<logic:present name="treeForm" property="root">
    	  		<nested:nest property="root" >
    	    		<jsp:include page="treenode.jsp" />
    	  		</nested:nest>
      		</logic:present>
    	</layout:treeview>
    et treenode.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
    <nested:root>
    
      <img src="gfx/spacer.gif" width="<nested:write property="nodeIndent" />" height="1">
      
      <nested:equal property="showChildren" value="true"> 
      
        <nested:image src="gfx/km_minus.gif" property="collapse"/>
        <nested:notEmpty property="iconId">
        	<nested:img page="/icon" property="iconIdRequest"/>
        </nested:notEmpty>
        <nested:link href="maintabs.jsp?tab=Détail"
        		property="request">
    	   <layout:menuItem name="${treeComponentName}" /> 
    	</nested:link>
        <br> 
        <nested:iterate property="childCollection"> 
          <jsp:include page="treenode.jsp"/> 
        </nested:iterate> 
        
      </nested:equal>
    il y a beaucoup de code que j'enleverrai ici petit a petit, car ce code avec la balise <layout:menuItem> ne fait pas grand chose pour l'instant mais j'aimerai savoir pourquoi il ne trouve pas le menurepository ? Est ce qu'il y a quelque chose de particuliers a configurer, je n'ai pas mis dans mon struts-config car il est dit ceci dans la doc :
    Si le contenu du treeview est défini dans le repository des menus et si ce contenu est suffisamment important (au moins 50 éléments par défaut), uniquement les noeuds principaux seront chargés. Une requête sera automatiquement effectuée côté serveur via l'action struts-layout '/treeview' afin de charger les autres noeuds si nécessaires. L'action du treeview doit être définie dans le fichier struts-config.xml avec les attributs suivants :

    * path="/treeview"
    * type="fr.improve.struts.taglib.layout.treeview.TreeviewAction"
    or je n'ai pas une tel quantité de noeud donc je n'ai pas besoin de cette action. Est ce que sa pourrait etre cela qui pose problème quand même sinon y a til autre chose ?

  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
    Vu le message d'erreur, le problème est dans l'Action.

    As-tu fait un test en enlevant la ligne que je t'ai indiqué dans ma précédente réponse et sans modifier ta jsp ?

  5. #5
    Inactif  
    Inscrit en
    Avril 2005
    Messages
    750
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 750
    Par défaut
    Oui j'ai fait le test avec les 2 lignes une par une, j'ai mit les 2 pour avoir un commentaires sur c lignes, une que j'ai pri de la doc l'autre d'un de tes posts, et j'ai testé avec les 2. Donc je ne sais pas trop la ce qui ne va pas....

  6. #6
    Inactif  
    Inscrit en
    Avril 2005
    Messages
    750
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 750
    Par défaut
    Je mettrais toute mon action demain ptetre qqchose que sa vient d'autre chose

  7. #7
    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
    Citation Envoyé par david06600
    Oui j'ai fait le test avec les 2 lignes une par une, j'ai mit les 2 pour avoir un commentaires sur c lignes, une que j'ai pri de la doc l'autre d'un de tes posts, et j'ai testé avec les 2. Donc je ne sais pas trop la ce qui ne va pas....
    Tu as bien testé soit l'une, soit l'autre ?
    Et tu as le même message d'erreur dans les 2 cas ?

    Dans mon cas, ceci suffit et fonctionne très bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LayoutUtils.addMenuIntoSession(request, treeviewComponent);

Discussions similaires

  1. Réponses: 6
    Dernier message: 22/06/2007, 15h51
  2. [Struts-Layout] exception quand j'utilise <layout:submit&
    Par jahjah42 dans le forum Struts 1
    Réponses: 2
    Dernier message: 29/11/2005, 11h17
  3. [Struts] Struts-Layout.properties - on le met où ?
    Par jahjah42 dans le forum Struts 1
    Réponses: 5
    Dernier message: 28/11/2005, 17h25
  4. [Struts-Layout] gestion des css
    Par pilz dans le forum Struts 1
    Réponses: 2
    Dernier message: 18/05/2005, 09h23
  5. [struts]Documentation Struts-layout
    Par GreenJay dans le forum Struts 1
    Réponses: 5
    Dernier message: 14/06/2004, 11h51

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