您的位置:首页 > 编程语言 > Java开发

关于No result defined for Action and result success问题解决办法的总结

2011-07-07 17:13 483 查看
关于No result defined for Action and result success这个问题,相信很多新手和非新手都遇到过,以下对于该问题的解决方法进行梳理。
首先,这个问题是说,在配置文件中,没有对于执行动作的Action返回结果的定义。
1、在配置文件Struts.xml中,添加错误中报告的结果。比如该错误的最后,“result success”,指的是没有"success"这个结果的定义,那就在Struts.xml中的<action></action>标签中间,加入<result name="result">转向地址</result>就可以了,“转向地址”指的是如果返回“success”,则转到该地址。缺少哪个结果,就添加哪个结果的定义。比如,“No result defined for Action and result input”,就添加“input”的定义。

2、修改Struts.xml的<package></package>标签中的namespace属性。改成<package name="defualt" namespace="/" extends="struts-default"></package>。关于<package>标签的属性简介:
(1)package中的name只是一个标识,你可以随意命名; 
(2)action中的name对应你页面中的一个action跳转,比如你页面有个表单提交: <form action="struts.xml中action里的name"> 
(3)namespace是用于区分包中相同的类,解决重命名的问题。举个例子,在同一公寓的同一层,有两个叫“李明”的,住在不同房间,那在走廊大喊李明,就会引起误会,而加入了“命名空间”,就可以喊“213房间的李明”,就不会引起歧义了。这里的命名空间,就是这个意思。

3、这种情况是最恶心的了,如果你用MyEclipse自动添加的Struts2的支持,那会导入好多包,多余的包就会冲突,也会造成这个错误。建议不要用MyEclipse自动添加,手工导入以下包即可。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐