繁体   English   中英

我们可以将Java对象作为报告参数传递给BIRT报告吗

[英]Can we pass Java Object as report parameter to BIRT Report

我有一个报告,该报告调用过程,然后从临时表中创建数据集。 现在,我们想要的不是调用过程,而是要从java项目中调用Procedure并创建结果集的java对象,并将该java对象作为参数传递给BIRT

现在我面临的问题是BIRT将仅支持原始类型作为参数类型,而不支持JAVA Object,那么有什么方法可以将Java Object作为报告参数传递给BIRT

您可以使用AppContext对象将任何内容传递给报表。 这是一个映射(字符串->对象)。 例如,可以在启动RunTask或RunAndRenderTask之前从Java端将对象放入此映射中。

runAndRenderTask.getAppContext().put("myKey", myObject);

在BIRT报告中,例如,您可以使用reportContext.getAppContext()从Javascript访问AppContext。

var myObject = reportContext.getAppContext().get("myKey");

有关更多信息,请参见BIRT文档,例如http://developer.actuate.com/be/documentation/ihub3/help/adg/adg62/index.html#page/ADG/ScriptingWithJavaScript.1.05.html#ww253653

顺便说一句,您还可以使用AppContext通过从JavaScript端向BIRT报告中的信息向您的应用返回信息。

请注意,AppContext传递的对象必须可序列化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM