404说明框架和容器都正常运行,那么就是在web.xml中的action路径肯定没配置对,你直接访问action看能不能访问到

解决方案 »

  1.   

    访问:http://localhost:端口号\你的项目名称\login.do
      

  2.   

    <result name="success"></result>
    是你result里没有配置返回的页面  当然就找不到了
      

  3.   

    在你的<package name="default" extends="struts-default">
    中添加一个namespace="/"试试
      

  4.   

    LZ到底是不是没有找到login.do,把错误信息贴出来。
      

  5.   


    是的 是没有找到login.do
      

  6.   

    错误信息在页面上 是 HTTP Status 404 - /mlqh/login.do这个时候网页的地址是 http://localhost:8080/mlqh/login.do就像zu418749406说的 login.do无法直接被访问 .. 
      

  7.   

    struts.xml中这么写:
    <package name="default" extends="struts-default" namespace="/">jsp页面中加上
    <form action="${pageContext.request.ContextPath}/login.do" method="POST">
    楼主试试。
      

  8.   


    不行啊 就像zu418749406说的 login.do无法直接被访问 ..
    输入http://localhost:8080/工程名/login.do 无法访问 这是什么原因 ? 
      

  9.   

    终于解决了 这个答案太晕了 
    先在web.xml中修改<filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>*.do</url-pattern>
    </filter-mapping>为 <filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>*.action</url-pattern>
    </filter-mapping>
    然后在JSP面中 <form action="login.action" method="POST">不知道为什么只能用.action
    还要注意 在action中的方法应该形如下//这是默认的执行方法 要写其他的方法只需要修改方法名
    public String execute() throws Exception{
        return null;
    }这样struts才找的到 另外我不知道struts2有没有专门的 获得JSP传入值的方法 和 专门的 页面跳转的方法 知道的大侠不妨传授一下 .. 
      

  10.   

    在struts2中默认处理的请求后缀为action,我们可以修改struts.xml 和struts.properties来修改默认的配置,在struts.xml中<struts>添加子接点<constant name=”struts.action.extension” value=”do” /> 或者是修改struts.properties文件 添加struts.action.extension = do这都是一样的效果 
    注意:struts.xml 和struts.properties的都放在src下 发布的时候会自动拷贝到WEB-INF/classes下 
      

  11.   


    明白了 
    那么在action中怎么获得form中的值呢 
    使用request获得form中的值不太优雅 
    上网看了一下 说是需要get set方法 
    我就用hibernate的反转工程生成了get set方法 
    然后在action中get其中的属性 获得的值是null也.. 
      

  12.   

    这属于基本的前台和后台数据如何交互的问题,struts2支持form表单name属性和后台action中的属性绑定的,也就是说action后个属性 private String name ,提供get,set方法【action类】,form表单中有 <input name=“name” form提交就可以在后台获取到name的值。当然也支持对象类型:
    参考官网例子
    http://struts.apache.org/release/2.3.x/docs/processing-forms.html
      

  13.   

    此楼可以获取到 form表单的值
      

  14.   

    在jsp中的name 要跟实体中的名称一样  然后在后台 get实体 就能获得