<form name="usersForm" method="post" action="welcome_index">这是welcome_index.jsp页面的表单的action <action name="welcome_*" class="com.struts2.ydm.action.LoginAction" method="{1}">
           <result name="success">/welcome_{1}.jsp</result>
           <result name="input">/welcome_{1}.jsp</result>
       </action>       这是struts.xml的配置// 对登录用户的表单验证是否为空
public void validateIndex() {
if (null == username || username.equals("")) {
this.addFieldError("username", "| 请您输入用户名");
}
if (null == password || password.equals("")) {
this.addFieldError("password", "| 请您输入密码");
}
} // 对登录用户的表单验证
public String index() {
String query_password = loginDao.getAdminPassword(username);
String isAdmin=loginDao.getIsAdmin(username);
if (query_password.equals("")) {
this.addActionError("| 该用户名不存在");
return INPUT;
}
if (!query_password.equals(password)) {
this.addActionError("| 您输入的密码有误,请重新输入");
return INPUT;
}
if(!isAdmin.equals("1"))
{
this.addActionError("|您不是管理员,无权登录!!!");
return INPUT;
}
session.put("username", username);//这个类实现了SessionAware,并且写了get,set方法,所以这里可以直接使用session
return SUCCESS;
}就是上面这一点内容,我检查了好多次,缓存也清了,当我不输入内容的时候,老是出现路径错误,HTTP Status 404 - /manpower/welcome_index
可是我这个路径下面是有welcome_index.jsp,我实在是想不通,哪里出了问题,大家帮忙看下,谢谢!

解决方案 »

  1.   

    这个应该是找不到 你的那个 action 吧,不是找不到jsp页面 ,建议楼主检查一下你的web。xml文件的拦截器设置
     还有 struts2 的action要有个命名空间 或者放在package下面的  
    希望楼主贴出完整的配置文件
      

  2.   


    <?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>
     <welcome-file-list>
        <welcome-file>welcome_index.jsp</welcome-file>
     </welcome-file-list>
    </web-app>这是web.xml的配置
      

  3.   

    /manpower/welcome_index 找不到??不是/manpower/welcome_index.jsp找不到...  具体没见你项目没办法说啊
      

  4.   

    没有好,之前也看几个过个struts2的项目,都没有用命名空间,我也部署好了.这个404错误,有点莫名奇妙
      

  5.   

    <form name="usersForm" method="post" action="welcome_index">
    这里的action="welcome_index" 应该写成action="welcome_index.action" 吧
      

  6.   

    你在配置文件中 <url-pattern>/*</url-pattern>
    改成 <url-pattern>/*.do</url-pattern>
    <form name="usersForm" method="post" action="welcome_index">
    改成<form name="usersForm" method="post" action="welcome_index.do">
    看看吧
      

  7.   

    报的错误就是action路径找不到不是jsp的路径 所以你还是看看你的action吧  
    好象需要把
    <form name="usersForm" method="post" action="welcome_index"> 
    这里的action="welcome_index" 应该写成action="welcome_index.action"
    然后你在看看 
    如果不行你把你的地址兰里的程序运行中里面的东西也贴上来
    我看看是怎么样的运行方式  前后有什么区别  
      

  8.   

    struts.xml文件 
    你是不是没有加package  extends=“struts-default”
      

  9.   

    form里可以不用加.action
    method="{1}"应该是这个问题,你打个断点试试
    manpower这个应该是项目名吧
      

  10.   

    <filter>
    <filter-name>action</filter-name>
    <filter-class>
    org.apache.struts2.dispatcher.FilterDispatcher
    </filter-class>
    </filter>
    <filter-mapping>
    <filter-name>action</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter> 
            <filter-name>struts-cleanup</filter-name> 
            <filter-class> 
                org.apache.struts2.dispatcher.ActionContextCleanUp
            </filter-class> 
        </filter> 
    <filter> 
            <filter-name>struts2</filter-name> 
            <filter-class> 
                org.apache.struts2.dispatcher.FilterDispatcher
            </filter-class> 
        </filter> 
    <filter-mapping> 
            <filter-name>struts-cleanup</filter-name> 
            <url-pattern>/*</url-pattern> 
        </filter-mapping> 
        <filter-mapping> 
            <filter-name>struts2</filter-name> 
            <url-pattern>/*</url-pattern> 
        </filter-mapping> 
      

  11.   

    <form/>里面好像要加.action吧,因为你用的是html标签
    如果用struts2标签<s:form/>可以不加action吧!!
      

  12.   


    哎,怎么是这个问题啊,我把所有标签改成struts2的标签,一切就OK了,谢谢大家的关注.