jquery的ajax请求struts action返回json时XmlHttpRequest.status500错误

  • Post author:
  • Post category:其他

可能造成这种错误的会有很多原因,我就说一下我这儿发生的原因,仅供参考。

在我的action中配置了三个属性,String name、String value、List audienceList;name和value都是从jsp页面得到的,audienceList是我要封装成json再传到jsp页面的;

运得时name和value的值从jsp得到了,audienceList的值也从后台得到了,可就是返回到页面时报500错误,网上找到一种说法是去掉name和value的get方法,因为在action中只要有get方法,struts就会将其包含到json对象中,但是去掉name和value的get方法以后,还是报错,后来又找到一种方法,就是在struts.xml中配置action时,在<result>中加上

<param name=”includeProperties”><!– includeProperties用于过滤json包含的属性–>

   
userexsit<!–action里userexsit字段–> ,user\.name<!– user字段只包含user对象的name属性–>

<!– 注意的是,上面过滤条件都是正则表达式,如上面的user\.name里的”.”要用转义符,不然会是正则表达式里的”.”–>
</param>
如我的action配置
<action name=”audienceFindIsRegister” class=”audienceFindIsRegister”>

   <result name=”success” type=”json”>

   <param name=”includeProperties”>

   audienceList

   </param>

   </result>

  </action>
问题解决。
 
问题补充:用以上方法改过代码后,没有500错误了,可是在jsp上得不到数据,后来网上查查,知道问题的根源是spring注入action时,getXX()导致的,去掉getXX()方法之后还是得不到数据,然后就把name和value的get方法删除了,在jsp上得到了数据。

 


版权声明:本文为sanyuesan0000原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。