当前位置:编程学习 > JAVA >>

Struts2.3.4+JSON 执行到JSONArray.fromObject停止 也不报错

JSP页面部分代码:

<s:select name="address" id="address" list="%{#request.addressList}" headerKey="" headerValue="-----请选择----"></s:select>


上面的JSP代码会触发下面的JS部分代码:


jQuery(document).ready(function(){

//获取工程地点和名称下拉框
var address = $(".address").children("select");
var name = $(".name").children("select");

//为工程地点下拉框注册事件
address.change(function(){
//获取选中的值
var addressValue = $(this).val();

//选中非默认选项
if(addressValue != ""){
$.post("inforManage_queryNameInitAction",{address:addressValue,type:"top"},function(data){
var a = data.length;
alert(data);

},"json");
}

})
})

JS的代码会执行Action部分代码:

                  request = this.getRequest();
response =this.getResponse();
out = this.getOut(response, out);
System.out.println("size="+list.size());
JSONArray json = JSONArray.fromObject(list);
System.out.println("....................");
out.println(json.toString());
System.out.println(json);
out.close();


问题是每次执行的时候只执行到
JSONArray json = JSONArray.fromObject(list);
这行。即会打印size=?,下面的.......不执行,并且也不报错。

在网上查了下,都说是包的问题,但我照着把包都加进去了。
我加的包有:
json-lib-2.3-jdk15.jar;
struts2-json-plugin-2.3.4.jar;
struts2-junit-plugin-2.3.4.jar;
commons-beanutils-1.8.0.jar;
ezmorph-1.0.6.jar; --------------------编程问答-------------------- 怎么没人回啊,虽然网上有很多的解决方法,可是我都试了,都还没行啊。 --------------------编程问答-------------------- 用debug模式看看JSONArray json = JSONArray.fromObject(list)是怎么执行的 --------------------编程问答--------------------  list="%{#request.addressList}" 
应该是这样的吧list="${#request.addressList}" 
--------------------编程问答-------------------- 额   我也遇到了同样的问题
楼主解决没有啊 
求答案啊 --------------------编程问答-------------------- 同样的问题、有木有人知道啊?加急 --------------------编程问答-------------------- list有问题
自己好好看看数据!
另外,没看到你的try catch啊! --------------------编程问答-------------------- list的数据问题吧!JSONArray.fromObject(list);在转换数据的时候,list里面的对象数据可能有循环(如对象A包含一个对象成员B,而那个对象成员B里面又包含对象成员A),不能解析 --------------------编程问答-------------------- 如楼上所说。不是不报错,你多等一会他就会报内存溢出错误,原因是因为你的对象中可能出现了环状引用关系。
--------------------编程问答-------------------- 刚遇到同样的问题解决了!

list中的对象 把需要的属性拉出来组建新的对象存到list中,作为json的参数。

至于为什么呢,#7 ,#8都有说... --------------------编程问答--------------------
Quote: 引用 9 楼 LoveEverlasting 的回复:

刚遇到同样的问题解决了!

list中的对象 把需要的属性拉出来组建新的对象存到list中,作为json的参数。

至于为什么呢,#7 ,#8都有说...[/quot

这个有写了的,主要是不报错。如果不这样写就会直接报错。但是还是不行,而且没有报错!!!!有人遇到解决了吗? --------------------编程问答--------------------
引用 10 楼 ghlong 的回复:
Quote: 引用 9 楼 LoveEverlasting 的回复:

刚遇到同样的问题解决了!

list中的对象 把需要的属性拉出来组建新的对象存到list中,作为json的参数。

至于为什么呢,#7 ,#8都有说...[/quot

这个有写了的,主要是不报错。如果不这样写就会直接报错。但是还是不行,而且没有报错!!!!有人遇到解决了吗?
     ……
--------------------编程问答-------------------- 看看你的包的版本,可能是包的问题语句没错。
我也遇到这样的问题换成以下jar包试试
1.commons-lang.jar 
2.commons-beanutils.jar 
3.commons-collections.jar 
4.commons-logging.jar 
5.ezmorph.jar 
6.json-lib-2.2.2-jdk15.jar 
jar包下载http://b-xinjun1120.iteye.com/blog/1767994


--------------------编程问答-------------------- 被struts2给拦截了 --------------------编程问答-------------------- 我按照 “b_xinjun1120”  说的解决了,   struts2-json-plugin  这个包也要加进去 --------------------编程问答-------------------- 你返回json ,有没有json 的包呢?
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,