大家看看这个为啥The menu repository could not be found.

jayinseu 2008-09-22 02:34:04
我使用spring security和struts+menu 做导航菜单,现在出现这个错误,怎么处理呢?
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: The menu repository could not be found.
at net.sf.navigator.taglib.UseMenuDisplayerTag.doStartTag(UseMenuDisplayerTag.java:145)
at org.apache.jsp.secured.main_jsp._jspx_meth_menu_005fuseMenuDisplayer_005f0(main_jsp.java:342)
at org.apache.jsp.secured.main_jsp._jspService(main_jsp.java:209)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:359)
at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:371)
at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)
at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:371)
at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:271)
at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:371)
at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)
at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:371)
at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)
at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:371)
at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:174)
at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
...全文
568 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jaisokforron 2010-09-19
  • 打赏
  • 举报
回复
我遇到了同样问题,可是解决了,基本上是包的问题,我最后烦了,把所有它war包自带的实例lib下的jar包全拷进去,就走过了,我也不知道少哪个包,但应该是少包
omglolwtf 2009-07-15
  • 打赏
  • 举报
回复
也不是包不全的原因,我导入了struts-menu-2.4.3.jar commons-collections-3.1.jar commons-lang.jar 之后在启tomcat时 是不报错了,但在打开页面的时候就报javax.servlet.jsp.JspException: The menu repository could not be found.
我在网上查过资料,好象没有一个确切的解决方法
yingwu1206 2008-12-09
  • 打赏
  • 举报
回复
也可能是包包问题!
ibm840511 2008-10-13
  • 打赏
  • 举报
回复
我前一段时间也遇到过这个问题,我用的是Struts-menu 2.41,刚开始也是出现的The menu repository could not be found异常,后来发现包没有倒全。楼主你是不是也仅仅倒入了Struts-menu2.41的jar包呢?
jayinseu 2008-09-23
  • 打赏
  • 举报
回复
也许没有人使用strutsmenu和spring security,或许只有appfuse才有答案,
注定,这个问题无人能回答
网络上也找不到任何的思路
jayinseu 2008-09-23
  • 打赏
  • 举报
回复
有人建议推到重新做项目,这个建议有什么由来吗?谢谢
jayinseu 2008-09-22
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xieningfu 的回复:]
那你再检查一下,配置文件的名称,或者是上面代码的位置,多尝试一下,如果还是不行,那我也不知道了,
不过照字面上理解,就是这个问题导致的
[/Quote]
这个比较关键,红色的,这个应该怎么放呢?你是说的那一个呢?一共是三个。从网络的google.baidu来看appuse使用了acegi和strutsmenu

应用中使用了struts,把struts menu做为一个struts插件,如下

< plug - in className = " net.sf.navigator.menu.MenuPlugIn " >
< set - property property = " menuConfig " value = " /WEB-INF/menu- config.xml " />
</ plug - in >

在web.xml中配置监听器, (在appfuse中使用的就是此种方式) 如下__这个的意思是其他的不用?

< listener >
< listener - class > net.sf.navigator.menu.MenuContextListener </ listener - class >
</ listener >

项目中使用到了spring,定义一个bean

< bean id = " menu " class = " net.sf.navigator.menu.MenuLoader " >
< property name = " menuConfig " >
< value >/ WEB - INF / menu - config.xml </ value >
</ property >
</ bean >
xieningfu 2008-09-22
  • 打赏
  • 举报
回复
那你再检查一下,配置文件的名称,或者是上面代码的位置,多尝试一下,如果还是不行,那我也不知道了,
不过照字面上理解,就是这个问题导致的
jayinseu 2008-09-22
  • 打赏
  • 举报
回复
在我的另一个帖子里面回复了,谢谢你xienigfu
不过还是不行,错误依旧在
xieningfu 2008-09-22
  • 打赏
  • 举报
回复
在struts-config.xml 文件里配置一下就行


<!--配置struts-menu插件-->
<plug-in className="net.sf.navigator.menu.MenuPlugIn">
<set-property property="menuConfig" value="/WEB-INF/menu-config.xml"/>
</plug-in>
xieningfu 2008-09-22
  • 打赏
  • 举报
回复
是因为你没有把struts-menu的配置文件注册到struts-config.xml里面造成的.


"The menu repository could not be found.": 菜单存放的地方没有找到
jayinseu 2008-09-22
  • 打赏
  • 举报
回复
├─.myeclipse
├─src
│ └─com
│ ├─abc
│ │ └─struts
│ │ └─action
│ └─Hibernate
└─WebRoot
├─images
├─META-INF
├─scripts
├─secured
│ └─admin
├─styles
├─templates
└─WEB-INF
├─classes
│ └─com
│ ├─abc
│ │ └─struts
│ │ └─action
│ └─Hibernate
└─lib

基本上是index.jsp(在web-inf)登录框,到secured/main.jsp,导航菜单在seucured/main.jsp下面

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧