首页 > 代码库 > No result defined for action com.action.Actionxxx and result xxx

No result defined for action com.action.Actionxxx and result xxx

报错:No result defined for action com.action.Actionxxx and result xxx

刚学Struts2不久,写的第一个Action就遇到这个问题,有两个原因:

1.Action类类名命名不能使用数字,如:Action1,服务器启动不报错,但访问Action1并运行其方法时,无法找到配置好的Result,即在映射过程中会丢失return的值。
(注意:Action类类名命名不能使用Action,以免和框架中的特殊词混淆而导致服务器启动过程中报错)

解决方法,在将Action的类名写成
有意义的英文单词+Action,如:LoginAction或ActionLogin,也可以只写成有意义的单词

2action的配置中没有声明相应的结果:(<!-- -->中为被注释的部分,即未配置result)

<action name="action1" class="com.action.Actionxxx">
            <!-- <result name="yes">/yes.jsp</result>
            <result name="no">/no.jsp</result> -->

</action>

解决方法:加上被注释的部分。

No result defined for action com.action.Actionxxx and result xxx