Accessing the Java SDK

The Crystal Enterprise Java SDK consists of a set of Java classes packaged up in a set of .jar files. These .jar files can be found in the following directory:

Program FilesCommon FilesCrystal Decisions2.5jar

→ For more information on Java, seeUnderstanding the Java Reporting Components Architecture,” p. 655


Most Java application servers have the following folder structure for Web applications:

ApplicationFolder
    WEB-INF
        lib
        classes
        src

To make the classes contained in these .jar files available for use, copy them to the lib folder.

The documentation (JavaDocs) for the SDK can be found at the following location:

Program FilesCrystal DecisionsEnterprise 10Web ContentHelpsdkhtmljava_docs.zip

The naming convention for the Java SDK is almost exactly the same as the COM SDK, which makes it easy to understand for those developers working on multiple development platforms. The exception to the naming is that rather than dealing with Java objects directly, interfaces are exposed. These interfaces begin with the letter I, such as IEnterpriseSession, IInfoStore, and so on.

In Java, all classes are organized into namespaces. The namespace for the Crystal Enterprise Java SDK classes all begin with com.crystaldecisions.sdk. There are more granular namespaces beneath that. For example, the ISessionMgr and IEnterpriseSession classes are contained in the com.crystaldecisions.sdk.framework namespace. For a list of all namespaces and the classes contained in them, consult the JavaDocs.

Listing 34.15 is a JSP version of the previously provided report viewing page.

Listing 34.15. Viewing a Report in a Java Server Page
<%@ page import="com.crystaldecisions.sdk.framework.*" %>
<%
// Log on to CE
ISessionMgr sessMgr = CrystalEnterprise.getSessionMgr();
IEnterpriseSession sess = sessMgr.logon("Ryan", "123", "CMS1", "secEnterprise");

// Get the name of the report from the query string
String reportID = request.getParameter("reportID");

// Retrieve the report source object given the ID IReportSourceFactory factory =
     (IReportSourceFactory)sess.getService("PSReportFactory");
IReportSource reportSource = factory.OpenReportSource(reportID);

// Create and set up the viewer object
CrystalReportViewer viewer =  new CrystalReportViewer();
viewer.setEnterpriseLogon(sess);
viewer.setReportSource(reportSource);

// Instruct the viewer to render the HTML output into the response stream
viewer.processHttpRequest(request, response, getServletContext());
%>

For more examples, visit the Developer Zone on the Business Objects Web site at http://www.businessobjects.com/devzone.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.124.145