If your application requires additional scalability
and the ability to modify reports, you can upgrade your report server to RAS
and quickly migrate your application with minimal changes to existing code.
BusinessObjects Enterprise uses the RAS object model. RAS provides additional
scalability and report modification features not provided with
Crystal Reports Java.
To migrate your web application to use RAS, you
must first obtain and install a copy of RAS. Once you have installed and
configured RAS correctly, you can migrate your web application.
The migration path from
Crystal Reports Java to RAS
differs depending on whether your application uses the ReportClientDocument
class.
Migrating an application that uses the
ReportClientDocument class
If your web application uses the
ReportClientDocument class to obtain a report source, you must change the JSP
import statements to use the RAS namespace instead of
Crystal Reports Java namespace.
For example, change
com.crystaldecisions.reports.sdk.* to
com.crystaldecisions.sdk.occa.report.application.*.
You also need to specify the location of your RAS
server:
ReportClientDocument clientDoc = new ReportClientDocument();
clientDoc.setReportAppServer("SERVERNAME");
Migrating an application that does not
use the ReportClientDocument class
Note: It is recommended that you use
the ReportClientDocument class for viewing or exporting reports.
If you web application does not use a
ReportClientDocument object, you must change your code to use the appropriate
RAS classes in place of Crystal Reports
Java classes. The code to do this differs depending on whether you are
using managed or unmanaged RAS.
The following is the original
Crystal Reports Java code:
IReportSourceFactory2 rptSrcFactory = new JPEReportSourceFactory();
Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());
BusinessObjects Enterprise Professional
Edition
In a managed environment like BusinessObjects
Enterprise Professional, remove the import statement that imports
com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory.
You must also change the original Crystal Reports Java code to the
following:
IReportSourceFactory2 rptSrcFactory = (IReportSourceFactory2)enterpriseSession.getService("RASReportFactory");
Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());
Note: The above code assumes that you
have created a valid enterpriseSession object.
BusinessObjects Enterprise Embedded
Edition
In an unmanaged environment like BusinessObjects
Enterprise Embedded Edition, remove the import statement that imports
com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory.
Then you must add an import statement to import
com.crystaldecisions.sdk.occa.report.application.reportsourcefactory.RasReportSourceFactory.
Additionally, you must change the original
Crystal Reports Java code to the
following:
IReportSourceFactory2 rptSrcFactory = new RasReportSourceFactory();
Object reportSource = rptSrcFactory.createReportSource(report, request.getLocale());
In an unmanaged environment, you must also
specify the location of the RAS server. See the
Report Application Server Java SDK
Guide for details about specifying the location of RAS.