1

我想将 BIRT 集成到 J2EE 应用程序中。有一个很好的教程解释了集成。长话短说,您只需将“BIRT Runtime”中的库复制到您的 EE 项目中,编写一个 servlet 和几个类来显示来自您的应用程序的报告。
要呈现报告,您需要创建 IRenderTask 实例,然后调用 render() 方法。

IRenderTask iRenderTask= birtEngine.createRenderTask(reportDoc);
 .....
iRenderTask.render();

但是,如果报告需要它们,我如何才能呈现输入参数的表单,仅使用 BIRT API。例如,像这样:

ReportParams params = getParameters(reportDoc)
ReportParamsFormRenderTask rpf = new ReportParamsFormRenderTask(params)
rpf.render()

提前致谢。

4

2 回答 2

0

我们可以使用IGetParameterDefinitionTask通过 BIRT api 获取参数信息。但是没有渲染功能,例如,我们需要使用此任务进入参数列表并使用 JSP 页面构建输出。

更简单的方法是在 birt 报告开头的网格元素中显示参数值,并根据参数值使用“可见性”属性根据需要隐藏/显示此网格。

于 2013-09-11T16:19:41.500 回答
0

感谢你的回答。我决定以更简单的方式进行))。我最终部署了“BIRT Runtime Release Build”,您可以从链接下载它。我已将其中的所有库放入我的 EE 应用程序中,在 web.xml 中我定义了已经实现的“ViewerServlet”的 servlet-mapping:

<servlet>
    <servlet-name>ViewerServlet</servlet-name>
    <servlet-class>org.eclipse.birt.report.servlet.ViewerServlet</servlet-class>
</servlet>
....

<servlet-mapping>
    <servlet-name>ViewerServlet</servlet-name>
    <url-pattern>/frameset</url-pattern>
</servlet-mapping>

以及其他所需的映射(与 BIRT Runtime Release Build web-app example 中的所有相同)。唯一不明白的一点,为什么它使用轴。如果我没有将“server-config.wsdd”文件放在我的 WEB-INF 文件夹中,我将无法运行报告。

于 2013-09-13T15:25:59.913 回答