日期:2014-05-18  浏览次数:20652 次

用struts2+ajax表单提交时,有谁遇到过这个异常?异步提交不需要result
[MyDAP] ERROR [http-8888-1] Dispatcher.serviceAction(512) | Could not find action or result
No result defined for action com.core.action.DrugAction and result success - action - file:/D:/apache-tomcat-6.0.26/webapps/shenai/WEB-INF/classes/struts.xml:345:66

这个异常不止一次遇到了,但这次很不同,因为用的是ajax,所以不需要页面跳转,所以不用写result,但是却出现了这个异常,好像是数据的类型不匹配的问题,但不管我怎么改,还是这个错误。。。求高手解答。。。

------解决方案--------------------
貌似return null就可以了
------解决方案--------------------
前台界面的action指定正确的位置了吗?
------解决方案--------------------
引用:
Quote: 引用:

前台界面的action指定正确的位置了吗?
路径绝对没错的,去掉表单中所有的信息,就能正常转到url对应的action中。表单中60多个参数,错误更不好找了。。。
悲了个剧啊,这么多参数,有没有表单信息与ajax传递有冲突的?
------解决方案--------------------
Struts里面的方法 直接写无返回值 (action类继承一下ActionSuport(单词忘记了)类)

例如: public void ajaxMethod()
{
   //逻辑

}

------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

前台界面的action指定正确的位置了吗?
路径绝对没错的,去掉表单中所有的信息,就能正常转到url对应的action中。表单中60多个参数,错误更不好找了。。。
悲了个剧啊,这么多参数,有没有表单信息与ajax传递有冲突的?
绝对没有,考虑到参数多,怕有冲突,专门起的巨长的名字。。。。。。那么多数据,不知道有没有其它封装起来了好办法。。。
只能求高手了,呵呵!
------解决方案--------------------
还没运行到return 那位置呢,现在是action找不到吧
------解决方案--------------------
ajax提交时候没有result只会有警告吧不会有error

这么多个参数定义个vo
比如有name   age .....
然后
<form id="testForm">
<input name="vo.name" />
<input name="vo.age" />
.
.
</form>

 $.ajax({
   url: "test.action",
   data:  $("#testForm").serialize(),
   
 });