刚学Strut2遇到问题了~package cn.action.org.action;public class LoginAction {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String exeute(){
if(username.trim().equalsIgnoreCase("cena")&&password.equals("cena")){
return "LoginSuc";
}else{
return "LoginFai";
}
}
}
web.xml
<?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>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>strut.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<constant name="struts.locale" value="en_utf-8"/>    <package name="loginTest" extends="struts-default">
<action name ="login" class="cn.action.org.action.LoginAction">
<result name="LoginSuc">/LoginSuc.jsp</result>
<result name="LoginFai">/LoginFai.jsp</result>
</action>
</package>
</struts>
index.jsp:
<%@ page language="java"  pageEncoding="UTF-8"%>
<h1>登录</h1>
<form action = "login.action" method="POST">
姓名<input type = "text" name = "username" ><br>
密码<input type = "text" name = "password"><br>
<input type ="submit" value = "登录">

</form>LoginSuc:
<%@ page language="java"  pageEncoding="UTF-8"%>
<h1>登录失败</h1>
<a href="/index.jsp">返回登录</a>
严重: Servlet.service() for servlet default threw exception
java.lang.NoSuchMethodException: cn.action.org.action.LoginAction.execute()

解决方案 »

  1.   

    execute()  方法是重载的父类方法
    LoginAction你没有继承 ActionSupport  
      

  2.   

     public String exeute(){
    方法名写错了应该是execute()
      

  3.   

    struts2用的是webwork的核心,你继承ActionSupport!然后里面覆盖
    public class LoginAction2 extends  ActionSupport{
     @Override 
        public String execute() {
      这里面就可以写代码!
       } 
    }
      

  4.   


    当然LoginAction2 也可以不继承任何类
    只是所有要用来访问的方法必须是public String 修饰的
    execute()方法基本上是“必须”的
      

  5.   

    2009-9-30 9:46:31 org.apache.struts2.config.Settings getLocale
    警告: Settings: Could not parse struts.locale setting, substituting default VM locale
    老是进入调试界面,请问什么回事
      

  6.   

    信息: Parsing configuration file [struts.xml]
    2009-9-30 10:10:21 org.apache.struts2.config.Settings getLocale
    警告: Settings: Could not parse struts.locale setting, substituting default VM locale
    2009-9-30 10:10:49 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
    信息: Setting DefaultObjectTypeDeterminer as default ...
    2009-9-30 10:10:50 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
    信息: Parsing configuration file [struts-default.xml]
    2009-9-30 10:10:51 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
    信息: Parsing configuration file [struts-plugin.xml]
    2009-9-30 10:10:51 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
    信息: Parsing configuration file [struts.xml]
    2009-9-30 10:10:51 org.apache.struts2.config.Settings getLocale
    警告: Settings: Could not parse struts.locale setting, substituting default VM locale
    2009-9-30 10:10:57 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
    信息: Setting DefaultObjectTypeDeterminer as default ...
    2009-9-30 10:10:58 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-8888
    2009-9-30 10:10:58 org.apache.jk.common.ChannelSocket init
    信息: JK: ajp13 listening on /0.0.0.0:8009
    2009-9-30 10:10:58 org.apache.jk.server.JkMain start
    信息: Jk running ID=0 time=0/47  config=null
    2009-9-30 10:10:58 org.apache.catalina.startup.Catalina start
    信息: Server startup in 45322 ms
      

  7.   

    信息: Parsing configuration file [struts.xml] 
    2009-9-30 10:10:51 org.apache.struts2.config.Settings getLocale 
    警告: Settings: Could not parse struts.locale setting, substituting default VM locale 
    2009-9-30 10:10:57 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit> 
    这条信息显示的错误是不是因为你的struts.xml配置文件的文件名错啦,找不到该配置文件哇?
    你修改下配置文件的名字试试...
      

  8.   

    在form表单中的action="login.action"是这样的么?我感觉不用.action直接login就行
    小弟只是刚学java说的有误还请指点,让我也明白下错误的解决办法..