原贴。
http://topic.csdn.net/u/20100629/06/19ff5f2a-357f-426b-83e7-42e978e7c300.html?2119336582我现在发现一个问题,把Filter加上会出问题。。<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<!--  -->
<filter>
    <filter-name>struts2</filter-name>
    <filter-class>
        org.apache.struts2.dispatcher.FilterDispatcher         
    </filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
TOMCAT启动的时候会抱错
2010-6-29 20:57:23 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2010-6-29 20:57:23 org.apache.catalina.core.StandardContext start
严重: Context startup failed due to previous errors不加的话,启动TOMCAT没有问题,但访问页面会出现问题。org.apache.jasper.JasperException: 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.
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)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:52)
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:49)
org.apache.jsp.sum_jsp._jspx_meth_s_form_0(sum_jsp.java:97)
org.apache.jsp.sum_jsp._jspService(sum_jsp.java:71)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
求救一个解决的办法。越快越好越详细越好我是新手这对我很重要。时间紧迫。。两个晚上没好好睡了。

解决方案 »

  1.   

    struts2的,简单的来说,我就是想自己做一个简单的例子,了解Struts2.
      

  2.   

    把tomat/server/lib目录下的commons-digester.jar,commons-beanutils.jar拷贝到common/lib/目录这个试过了不行。
      

  3.   

    没有多引包,一共这么几个
    commons-logging-1.0.4.jar
    freeer-2.3.8.jar
    ognl-2.6.11.jar
    struts2-core-2.0.13.jar
    xwork-2.0.6.jar
      

  4.   

    Filter肯定不能省,不然咋知道是struts2,根据你的配置文件,直接写你提交的action的值就是了,
    例如:
    <form action="login" method="post">
     
    </form>
    浏览器中输入
    http://localhost:8080/你的工程名/login
    这样就可以了,后面要加后缀的话
    http://localhost:8080/你的工程名/login.action
    把你要导入的struts2包重新导入,服务器重启试下,再看报啥错