迁移应用程序以使用 Crystal Enterprise

将应用程序从 JRC(嵌入式报表方案)迁移到完整的 Crystal Enterprise 解决方案(企业级报表方案)可提供附加功能,如运行时报表创建、将运行时报表修改保存到 Crystal Reports 报表 (.rpt) 文件中、报表管理、安全和计划。 Crystal Enterprise 服务器还增强了可伸缩性并提高了性能,以支持大量的用户并发需求。

 

将应用程序从 Java Reporting Component 迁移到 Crystal Enterprise

如果应用程序要求附加的可伸缩性和报表修改功能,则可以将报表服务器升级到 RAS,并对现有代码执行最少量更改来迅速迁移应用程序。 Crystal Enterprise 使用 RAS 对象模型。RAS 提供了非 Java Reporting Component 附带的附加可伸缩性和报表修改功能。

要迁移 Web 应用程序以使用 RAS,必须首先获得并安装一份 RAS。正确安装并配置了 RAS 后,您将能够迁移 Web 应用程序。

从 Java Reporting Component 到 RAS 的迁移路径因应用程序是否使用 ReportClientDocument 类而异。

迁移使用 ReportClientDocument 类的应用程序

如果 Web 应用程序使用 ReportClientDocument 类来获取报表源,则必须更改 JSP 导入语句,以便使用 RAS 命名空间(而不是 Java Reporting Component 命名空间)。

例如,将 com.crystaldecisions.reports.sdk.* 更改为 com.crystaldecisions.sdk.occa.report.application.*

还需要指定 RAS 服务器的位置:

ReportClientDocument clientDoc = new ReportClientDocument();

clientDoc.setReportAppServer("SERVERNAME");

迁移不使用 ReportClientDocument 类的应用程序

注意:    建议您使用 ReportClientDocument 类来查看或导出报表。

如果 Web 应用程序不使用 ReportClientDocument 对象,则必须更改代码,以便使用相应的 RAS 类来代替 Java Reporting Component 类。执行此操作的代码因您使用的是托管的还是非托管的 RAS 而异。

下面是原始 Java Reporting Component 代码:

IReportSourceFactory2 rptSrcFactory = new JPEReportSourceFactory();

Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());

Crystal Enterprise 专业版

在托管的环境中(如 Crystal Enterprise 专业版),删除用于导入 com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory 的导入语句。还必须将原始 Java Reporting Component 代码更改为以下形式:

IReportSourceFactory2 rptSrcFactory = (IReportSourceFactory2)enterpriseSession.getService("RASReportFactory");

Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());

注意:    上面的代码假设您已创建了有效的 enterpriseSession 对象。

Crystal Enterprise 内嵌版

在非托管的环境中(如 Crystal Enterprise 内嵌版),删除用于导入 com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory 的导入语句。然后,您必须添加一个导入语句,以便导入 com.crystaldecisions.sdk.occa.report.application.reportsourcefactory.RasReportSourceFactory。此外,必须将原始 Java Reporting Component 代码更改为以下形式:

IReportSourceFactory2 rptSrcFactory = new RasReportSourceFactory();

Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());

在非托管的环境中,还必须指定 RAS 服务器的位置。 有关指定 RAS 的位置的详细信息,请参阅报表应用程序服务器 Java SDK 指南

你可能感兴趣的:(迁移应用程序以使用 Crystal Enterprise)