高手救救我吧:struts2的action里面,我获取了一个list对象,现在想把list转换成json传给ajax请求的结果

具体如下:list是一个数组,我想在action里面将list转换成json,通过$.ajax()的url,访问这个action,并将转换好的json传给$.ajax()... 具体如下:list是一个数组,我想在action里面将list转换成json,通过$.ajax()的url,访问这个action,并将转换好的json传给$.ajax()的返回值。在$.ajax()的回调函数里面处理json数据。现在我的action是这样写的:

经过测试, JSONArray json = JSONArray.fromObject(files);这句有问题。我不知道这样写对不对。
问题1:我的这个action应该怎样写才对呢?
问题2;struts.xml配置应该怎样配置呢?我上面那样配置,启动tomcat会报错,删除<result type="json"></result>就不会报错。
最后,谢谢你闹心看完我的问题,请你帮帮我吧,我这个问题查了很久了,一直没解决。
展开
 我来答
daiyi19812012
推荐于2016-03-20 · TA获得超过158个赞
知道小有建树答主
回答量:258
采纳率:0%
帮助的人:110万
展开全部
你的files是是数组
JSONArray.fromObject()这个是把list转换成json

<result type="json"></result>加不加这个东西应是情况而定,你写的这个代码应该不用加

下面这种情况就要加<package name="ajaxjson" extends="json-default">和<result type="json">
public String findall() throws Exception{
List newsTypeList=newsService.findalltype();

JSONArray json=JSONArray.fromObject(newsTypeList);
result=json.toString();

return SUCCESS;
}
追问

恩,我按照你说了,改成这样了:

这样做的话,把数组转换成字符串了,$.ajax()请求成功的回调函数中alert(data),返回的是

我想在回调函数里能遍历这个传过来的数组,按索引取出每一项的值,不知道这个应该怎样实现呢?还请赐教。

追答
List fList=Arrays.asList(files);
。。。
out.print(fList.toString());

这个传过来的值是字符串,把data转换成数组,然后在循环遍历每一项的值
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式