关于struts2出现No result defined for action????Action and result input - action

  1. 前台jsp页面提交的数据与对应的action属性类型不一致
    例如:前台页面有多个相同的input 输入框
  2.  1 <input onclick="$(‘[name=privilegeIds]‘).attr(‘checked‘,this.checked)" type="checkbox" name="privilegeIds"></input>
     2 <!--下面的是相同的checkbox 跟上面的名称一致-->
     3
     4     <ul id="root">
     5 <%-- 第一级 --%>
     6 <s:iterator value="#privilegelist">
     7     <li>
     8         <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> >
     9         <label for="cb_${id}"><span class="folder">${name}</span></label>
    10         <ul>
    11         <%-- 第二级 --%>
    12         <s:iterator value="children">
    13             <li>
    14                 <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> >
    15                 <label for="cb_${id}"><span class="folder">${name}</span></label>
    16                 <ul>
    17                 <%-- 第三级 --%>
    18                 <s:iterator value="children">
    19                     <li>
    20                         <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> >
    21                         <label for="cb_${id}"><span class="folder">${name}</span></label>
    22                     </li>
    23                 </s:iterator>
    24                 </ul>
    25             </li>
    26         </s:iterator>
    27         </ul>
    28     </li>
    29 </s:iterator>
    30 </ul>
    31 <!--只需要看input标签即可-->

    这段代码我想说明的是 如果你提交的同名(name属性名称相同的话,那么他们的value值的类型必须一致且最好与你action里定义的属性类型一致)否则会出现上面异常,且这个异常非常的不容易发现。
    避免错失:定义前台表单元素数据时如果,例如:你的全选按钮只是一个事件功能并不需要向后台action提交数据的话,就不要设置该元素的 name属性了,即只要是向后台提交数据的表单元素都可以不设置name属性,避免因此发生不必要的异常。

  3. 这是遇到这个问题时看到的比较准确的分析也贴在这里

    今天在编程的时候,我遇到了No result defined for action and result input的错误,这个错误想必大家都有遇到过吧,我今天发了很长时间弄这个错误,我以为我的Action函数出错了想调试,但是程序就是不进入断点,上网查资料,有的说路径错误啦,然后我找我的路径错误,搞了半天还是没发现有路径问题。然后我给我的属性的get方法都弄上了断点,我发现了问题,现在跟大家分享。 
    这个错误就是说没有为返回的input定义,可是有时候我们不一定要这个鬼东西,然而在Action中出错的话,默认就返回了这个input了,这时,我们在struts的<result>中定义的话,就出现No result defined for action and result input的错误了。 
    引起这个错误的原因是很多的,路径错误也是其中的一种,我这里的问题是,我的页面上的类型和我定义的属性的类型不一致,我的属性是int型的,但是在页面上输出的时候加了一个逗号,用了分割千位的,结果就出现了这个问题了。

    这个问题好像在strtus2.1以上版本才出现, 这个问题的上面的解决方案已经把原因说的差不多了,在实际应用中,我估计大部分情况应该都是在action里面定义了int或者别的什么类型的变量,然后指望struts的自动填装把post来的数据转换,这时容易出现转换失败,从而导致了这个错误,所以查这个错误,可以利用ff的httpfox来查看实际post的参数是什么,然后和action中对应的属性对比,看那个会出现转换错误。

    淡然另一种就是上面说的在所有的set 中加入断点,总能看到是哪个方法执行失败的。

    另外还有种就是页面提交了同一个名字的参数多个,比如

    写道

    username 123 
    username 123 
    permissions 123 
    info 31234

    页面冲提交了了两个username ,而我的后台却只写了一个String username,这样同样会出错,这个是利用httpfox看的,

    其实最好的是action中的和post相对应属性都设置成为String类型,省事,也不会再出现这个错误了,然后在execute中执行转换。这样也方便差错

时间: 2024-10-09 03:11:18

关于struts2出现No result defined for action????Action and result input - action的相关文章

[Struts2] No result defined for action ... and result input &amp; Invalid field value for field ...

"No result defined for action ... and result input"错误一般发生在Struts2的拦截器拦截时遇到了问题时,Struts2会将跳转到result为input的视图上,但是在配置文件中并没有给这个Action配置input的result.可以建立一个内容为如下的Jsp文件,并在配置文件中配置result为input时跳转此文件,将会显示出具体的错误原因. <div style="color:red"> &l

Struts2 Problem Report: No result defined for action ... and result exception

每    当Struts2爆出这样的异常,会很郁闷,原因太多了,只能一一的检查.有的说input页面没指定,有的说namespace有问题,有的说你对应的result有问题,有的说validate不通过,等等.但是在这里,我却不是,我无论如何都找不到原因,差不多花了两个钟,我无意中使用Struts2异常处理页面,把异常信息打印输出来(Integer不能转化为String ),我才知道原因的所在,原来是在Service层代码里执行hql语句时,传入的参数应该为String类型,我却把它弄为Inte

Struts2.3动态调用报 No result defined for action 错误

struts 2.3.16  採用动态调用发现不工作报404 not found,网上查找原因: 1.由于:struts2中默认不同意使用DMI 所以:须要在配置文件里打开: <constant name="struts.enable.DynamicMethodInvocation" value="true"/> 改动发现报No result defined for action 2.错误信息来看,是说未定义result. 你有没有配置拦截器<in

struts2的一个异常:No result defined for action XXX and result input

同事在使用struts2的时候,出现两个问题: 1.No result defined for action XXX and result input: 2.前端js使用jQuery的i18n一直显示的是英语: 而且关键是,在大部分的浏览器上都是正常的,只有在个别电脑上的浏览器会出现这个问题. 网上很多资料显示是因为前端form表单提交的数据类型和后台action中的字段类型不匹配引起的,可是检查了发现了后台action中字段的类型除了String就是Date,没有什么int等,这就奇怪了.于是

[Struts2] No result defined for action ... and result input &amp;amp; Invalid field value for field ...

"No result defined for action ... and result input"错误一般发生在Struts2的拦截器拦截时遇到了问题时.Struts2会将跳转到result为input的视图上,可是在配置文件里并没有给这个Action配置input的result. 能够建立一个内容为例如以下的Jsp文件.并在配置文件里配置result为input时跳转此文件.将会显示出详细的错误原因. <div style="color:red">

struts2的严重问题 No result defined for action ... and

表单页面数据类型与实体数据类型部匹配,提交数据 strtus2 出现 No result defined for action ....and result input 错误,并且整个模块都死掉了,需要重新启动tomcat 才能运行?不知为何? 请高手回答,我也知道没有配置result type input 选项,但是配置了 /orderMeal/add.jsp 选项,只要表单页面数据类型与实体数据类型不匹配,提交数据后整个模块都会死掉,只有重启tomcat ?????????? 问题补充: f

struts异常:No result defined for action

问题描述: No result defined for action com.freedom.funitureCityPSIMS.controller.login.CheckAction and result error at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373) at com.opensymphony.xwork2.DefaultAction

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,以免和框架中的特殊词混淆而导致服务器启动过程中报错)

Struts 2.x No result defined for action 异常

这是我跑struts2的第一个例子,跑的也够郁闷的,这个问题烦了我几个钟... 2011-5-10 10:10:17 com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn警告: Could not find action or resultNo result defined for action com.augur.action.LoginAction and result success at com.opensymph