首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Struts错误:找不到Struts调度程序

Struts错误:找不到Struts调度程序
EN

Stack Overflow用户
提问于 2011-02-04 18:36:59
回答 1查看 1.2K关注 0票数 0
代码语言:javascript
复制
The Struts dispatcher cannot be found.  This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for this tag. - [unknown location]
        at org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:60)
        at org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:44)
        at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:48)
        at jsp_servlet.__login._jsp__tag0(__login.java:115)
        at jsp_servlet.__login._jspService(__login.java:84)
        at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
        at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:408)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:318)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3495)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(Unknown Source)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
        at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

是什么导致了这个问题?我该如何修复它?

EN

回答 1

Stack Overflow用户

发布于 2011-02-04 18:45:35

堆栈跟踪似乎确认了异常消息所解释的内容:您可能试图呈现login.jsp页面,而此JSP使用了一些struts标记。但是因为请求没有通过Struts过滤器,所以标记不能工作。

在Struts (以及其他所有基于动作的框架AFAIK)中,每个URL (图像、脚本等静态资源除外)都应该指向cebtral servlet或过滤器,它会分派给你的动作,而动作本身又会转发给一个JSP。如果直接调用JSP,它就不再是MVC,标记也不能工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4897018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档