Java 如何从display:table中的结果获取输入流?
我有一个动作,以以下几行结尾:Java 如何从display:table中的结果获取输入流?,java,jquery,struts2,stream,struts2-jquery,Java,Jquery,Struts2,Stream,Struts2 Jquery,我有一个动作,以以下几行结尾: String pageVisitJson = new Gson().toJson(pageVisitLogList); is = new ByteArrayInputStream(pageVisitJson.getBytes()); return SUCCESS; 这一行动的结果是: @Results({ @Result(name=ActionSupport.SUCCESS , type="stream", params={"contentType",
String pageVisitJson = new Gson().toJson(pageVisitLogList);
is = new ByteArrayInputStream(pageVisitJson.getBytes());
return SUCCESS;
这一行动的结果是:
@Results({
@Result(name=ActionSupport.SUCCESS , type="stream", params={"contentType", "text/html", "inputName", "is"}),
@Result(name=ActionSupport.SUCCESS, type="tiles", location="/pageVisitReport.tiles")
})
pageVisitReport.tiles
是我需要使用显示标签显示表格的页面。现在,可以在显示标签中访问输入流的状态。我的@结果是不正确的还是其他原因?显示表将由jQuery进一步处理
无论何时调用my action,它都会在一个简单的页面上显示所有记录。每个操作配置的结果名称属性都应该是唯一的,因此该操作能够返回此结果
使用流
结果类型需要为inputName
参数引入的流提供一个getter
返回的内容类型是text/html
,因此需要通过javascript解析此文本。您可以使用JSON.parse(数据)
。如果您通过提供映射到操作的URL向服务器发出Ajax请求,如$.Ajax()
,则数据将可用。在success
函数处理程序上,您将获得数据
关于如何使用流
结果与json
结果将json字符串返回到客户端javascript的区别和解释,请参见答案。您不能将两个结果映射到同一个结果名称OK,我也在考虑它……从问题的角度来看,我在这里放了这一行,因为我还需要将输入流发送到pagevisitreport.tiles。