Faire un simple Treeview. Please!
Salut à tous, je souhaiterai faire un treeview simple pour comprendre comment marche struts layout pour faire des arbres, et je m'arrache les cheveux.
Voici ma page jsp treeview.jsp:
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
|
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-layout.tld" prefix="layout" %>
<layout:html locale="true">
<head>
<title></title>
<link href="style.css" rel="stylesheet" type="text/css">
<html:base/>
</head>
<body>
<layout:treeview>
<layout:menuItem key="treeview.menu1" link="link1.html"/>
<layout:menuItem key="treeview.menu2">
<layout:menuItem key="treeview.menu2.submenu1">
<layout:menuItem key="treeview.menu2.submenu1.item1" link="link2.html"/>
<layout:menuItem key="treeview.menu2.submenu1.item2" link="link3.html"/>
</layout:menuItem>
<layout:menuItem key="treeview.menu2.submenu2" link="link3.html"/>
<layout:menuItem key="treeview.menu2.submenu3" link="link4.html"/>
</layout:menuItem>
</layout:treeview>
<layout:treeview name="java"/>
</body>
</layout:html> |
Voici ce que j'ai rajouté dans le struts-config.xml:
Code:
1 2 3 4 5 6
|
<action path="/treeview" type="...util.layout.MenuTreeviewAction">
<forward name="success" path="/treeview.jsp"/>
</action>
</action-mappings>
<message-resources parameter="ApplicationResources"/> |
Et voici mon action
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
|
package ....util.layout;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.Globals;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMessage;
import fr.improve.struts.taglib.layout.menu.MenuRepository;
import fr.improve.struts.taglib.layout.menu.MenuComponent;
import fr.improve.struts.taglib.layout.util.LayoutUtils;
public class MenuTreeviewAction extends Action{
public ActionForward execute(ActionMapping mapping,ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
MenuComponent lc_menu1 = new MenuComponent();
lc_menu1.setName("java");
MenuComponent lc_menu11 = new MenuComponent();
lc_menu11.setTitle("Java");
MenuComponent lc_menu111 = new MenuComponent();
lc_menu111.setTitle("Sun");
lc_menu111.setLocation("http://java.sun.com");
lc_menu11.addMenuComponent(lc_menu111);
MenuComponent lc_menu112 = new MenuComponent();
lc_menu112.setTitle("Eclipse");
lc_menu112.setLocation("http://www.eclipse.org");
lc_menu11.addMenuComponent(lc_menu112);
lc_menu1.addMenuComponent(lc_menu11);
LayoutUtils.addMenuIntoSession(request,lc_menu1);
return (mapping.findForward("success"));
}
} |
Voici l'erreur que j'obtiens quand j'essaye d'afficher treeview.jsp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
javax.servlet.jsp.JspException: Menu repository not found
at fr.improve.struts.taglib.layout.util.LayoutUtils.getMenu(LayoutUtils.java:446)
at fr.improve.struts.taglib.layout.treeview.TreeViewTag.doEndLayoutTag(TreeViewTag.java:102)
at fr.improve.struts.taglib.layout.LayoutTagSupport.doEndTag(LayoutTagSupport.java:47)
at jsp_servlet.__treeview._jspService(__treeview.java:402)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:526)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183) |
Est-ce que quelqu'un a une idée, please please please!!!:help:
Merci beaucoup.