login.jsp页面代码:
<form action="Login" method="post">
用户名:<input type="text" name="name"></input><br>
密码:<input type="password" name="pwd"></input><br>
<input type="submit" value="提交"></input>
</form>LoginAction.java的代码:public class LoginAction extends ActionSupport{
private String name;
private String pwd;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
@Override
public String execute() throws Exception {
if(getName().equals("aaa") && getPwd().equals("aaa") ){
return "error";
}
else{
return SUCCESS;
}
}strutrs.xml的代码:<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
 <action name="login" class="liu.action.LoginAction">
<result>/success.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package>
</struts>点击提交就报错:
如下:HTTP Status 404 - /Myex/Login--------------------------------------------------------------------------------type Status reportmessage /Myex/Logindescription The requested resource (/Myex/Login) is not available.
--------------------------------------------------------------------------------Apache Tomcat/6.0.29
哪里出错了?

解决方案 »

  1.   

    <form action="Login" method="post">改为<form action="login.action" method="post">试试看。。大小写区分,注意加.action后缀。。
      

  2.   

    login.jsp页面代码:
    <form action="Login" method="post">
     
    action="Login" 改为 action="login"  试试..
      

  3.   

    你struts配置文件里写的form提交路径是小写的login
    而你表单提交的路径Login中L是大写的,当然404了,错误很明显
    而且,你form表单中提交要加上.action,也就是login.action
      

  4.   

    在struts和jsp中区分大小写的,查看一下你写的大小写是否正确代码看着没问题
      

  5.   

    通过这里可以看出来description The requested resource (/Myex/Login) is not available.
    没有连接上Login
      

  6.   

    把你的form表单改为:
    <form action="login" method="post">
      

  7.   

    配置文件里面<action name="login" class="liu.action.LoginAction">
    在jsp页面<form action="Login" method="post">
    所以……
      

  8.   

       1.大小写问题
       2.有个可以改进的地方:struts2自己有维护valueStack,所以getName().equals("aaa") && getPwd().equals("aaa")    可以直接写为: name.equals("aaa").....不需要调用get方法
      

  9.   

    下面好多人都说了这个login的大小写问题,可是改过来,报的错误还是一样。本人初学,问一下还有个web.xml需要配置吗?
      

  10.   

    除了这个login的问题,会不会还有其他什么没有配置好?本人初学菜鸟,多多指教。
      

  11.   

     web.xml要配置拦截器。。
    We
      

  12.   

    <action name="login" class="liu.action.LoginAction">和<form action="Login" method="post">中两个login大小写不一致。
    在就是看web.xml中的配置对不对了
      

  13.   

    这个login我改过来后,还是报错,web.xml需要怎么配置呢?我没有配置,是默认的,能贴出来吗?
      

  14.   

    web.xml怎么配置?能贴出来吗?
      

  15.   

    我的web.xml是默认的:
    <display-name>Myex</display-name>

    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
      

  16.   

    web.xml配置  如果你的struts版本在2.16以上,,配置如下:    <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        </filter>    <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>如果你的struts版本在2.16一下。将org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  这个改成org.apache.struts2.dispatcher.FilterDispatcher你也可以两个都试试。
      

  17.   

    如果 不是楼上所说的 login 的路径问题的话, 就加上  web.xml配置  如果你的struts版本在2.16以上,,配置如下:
    Java code    <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter<……
    [/Quote]这个配置 再看!
      

  18.   

    解决没啊?这个应该可以有几种改法:

    <form action="Login" method="post">
    1、改为<form action="login.action" method="post">
    2、改为<s:form action="login" method="post"></s:form>
    3、改strutrs.xml文件里的那个login为Login
      

  19.   

    你web.xml里配置的action名字是*.action么,如果是,那么链接是login.action就没有问题,不过不是就改下
      

  20.   

    如果没有用struts2的标签用这种形式的标签<form action="login" method="post">必须加后缀例如:
    <form action="login.action" method="post">否则会报404错误的!!