Struts - Exception - The Struts dispatcher cannot be found

淺唱寂寞╮ 提交于 2019-12-11 11:53:26

问题


I am using Struts 2.1.8.1. I want to use tags, supplied by struts, im my jsp pages. e.g

<%@ taglib prefix="html" uri="/struts-tags" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Transfer Program - Login</title>
   </head>
   <body>
       <html:form action="/loginaction.do" method="post">
           Username:<html:text name="username"></html:text>
       </html:form>
   </body>
</html>

But when I run the above jsp page, I got the following error:

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]
org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:60)
org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:44)

回答1:


You cannot use Struts 2 tags with Struts 1. Struts 2 is from the WebWorks project and it's not backward compatible with Struts 1.

  • Struts 1 works with Actions
  • Struts 2 works with filters and dispatchers.

Hence why you get this:

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]

Get the Struts 1 taglibs and replace the Struts 2 taglibs.

Follow my answer from your question here: Struts - Taglib directive in a JSP page for .tld provided by Struts

Edit A good tutorial site:

  • http://wiki.apache.org/struts/StrutsTutorials
  • http://www.roseindia.net/struts/. Here it explains what Actions, Plugins, Tags, Validation, mappings, etc. works and how to use them. Read on Struts 1 and not Struts 2.


来源:https://stackoverflow.com/questions/2395364/struts-exception-the-struts-dispatcher-cannot-be-found

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!