struts.xml配置文件(相关部分):
Java代码 复制代码   1. <!-- UsersAction -->  
   2.         <action name="logon" class="UsersAction">  
   3.             <result>/manage.jsp</result>  
   4.             <result name="input">/failed.jsp</result>  
   5.         </action>  <!-- UsersAction -->
<action name="logon" class="UsersAction">
<result>/manage.jsp</result>
<result name="input">/failed.jsp</result>
</action>UsersAction相关部分代码:
Java代码 复制代码   1. @Override  
   2.     public String execute() {  
   3.   
   4.         if (action == null || "".equals(action)) {  
   5.             return ERROR;  
   6.         }   
   7.              else if ("logon".equals(action)) {  
   8.             return logon();  
   9.         }   
  10.         return ERROR;  
  11.     }  @Override
public String execute() { if (action == null || "".equals(action)) {
return ERROR;

         else if ("logon".equals(action)) {
return logon();

return ERROR;
}
其中UsersAction已经在applicationContext.xml中配置好;
运行时报错:
No result defined for action com.person.Action.UsersAction and result - action -,
不得其解,高手帮忙啊。

解决方案 »

  1.   

    你action类的路径指定对了吗?我看好像没有另外 
    else if ("logon".equals(action)) {  
      return logon();  
    这个是要定向到action吗?
    你可以return一个字符串然后在<result>中去定位一个action
      

  2.   

    回一楼,
    logon()方法就是登陆action的实际处理方法,logon()返回的就是SUCCESS/INPUT;
    UsersAction的路径在spring配置文件已经配置了,这个是没问题的(改变action参数时已经测试通过);
    我就是想通过execute()方法,根据action参数的不同转而执行不同的方法;
    而且 No result defined for action com.person.Action.UsersAction and result - action -,
    这个错误诡异,不知道哪里出问题了。
      

  3.   

    再补充,
    就是当action为logon时,报以上错误,,,
      

  4.   

    execute() 方法返回一个字符串,但这个字符串在struts.xml中没有配置。貌似你的配置中result只有默认值和"input"值,但Action返回结果有ERROR值。lz把ERROR业配置上试试看。
      

  5.   

    拜托 看清楚些 啊,还有我在2,3楼的补充,
    ERROR ,早配置了(这个没问题的)。
      

  6.   

    配置文件是没问题的,
    是dao的方法有些问题,^_^
    解决了。