前两天试了一下用纯手动建一个struts2的登录,在web.xml里面加了filter后就会有404错误(找不到jsp),去掉就没有问题,可以正常显示,后台tomcat也没有报错,我奇怪了好几天了,各位帮我看看是什么地方出了问题,我怀疑是路径有问题,但是不知道哪里有问题。我实在看不出问题在哪里,多谢了。目录结构是:
StrutsDemo
  ---login.jsp
  ---success.jsp
  ---error.jsp
  ---WEB-INF
         ---web.xml
         ---lib
         ---src
         ---classes
              ---abc
                  ---LoginAction.class
              ---struts.xml
login.jsp的代码是:[code] <%@ page contentType="text/html;charset=gbk"%>
<html>
   <body>
      <form action="login.action">
         <input type="text" name="username"/>
         <br/>
         <input type="password" name="password"/>
         <br/>
         <input type="submit" value="登陆"/>
      </form>
   </body>
</html>[/code]web.xml是代码是:(filter-class是org.apache.struts2.dispatcher.FilterDispatcher也试过了不行)[code] <web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="true">      <filter>
         <filter-name>s2</filter-name>
         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
      </filter>
      <filter-mapping>
         <filter-name>s2</filter-name>
         <url-pattern>/*</url-pattern>
      </filter-mapping>      <welcome-file-list>
         <welcome-file>login.jsp</welcome-file>
      </welcome-file-list>
</web-app>[/code]lib目录下有9个文件:
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
freeer-2.3.19.jar
javassist-3.11.0.GA.jar
ognl-3.0.5.jar
struts2-core-2.3.3.jar
xwork-core-2.3.3.jarsrc目录里面只是一些原文件struts.xml的代码是:(namespace要不要效果都是一样,都是404找不到jsp)[code] <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC
 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
 "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>    
    <package name="default" extends="struts-default" namespace="/">     
        <action name="login" class="abc.LoginAction">
            <result>/success.jsp</result>
        </action>
    </package>
</struts>[/code]LoginAction.class是一个LoginAction.java编译后的文件,是一个POJO类,这里我没用继承ActionSupport类或实现Action接口,因为都是一样的,本身是一个POJO类就可以,也不是这个问题导致的404找不到jsp[code] package abc;public class LoginAction 
{
     String username;
     String password;      public LoginAction()
     {}       public void setUsername(String username)
    {
         this.username = username;
    }
      public String getUsername()
    {
        return username;
    }     public void setPassword(String password)
    {
        this.password = password;
    }
     public String getPassword()
    {
        return password;
    }     public String execute()
   {
        if(username.equals("") || username == null)
       {
            return "error";
       }
       else
       {
            return "success";
       }
   }
}[/code]