SAP Knowledge Base Article - Public

1544381 - Calling ReportClientDocument.getPrintOutputController().getSavedXMLExportFormats() throws the error: "The request timed out because there has been no reply from the server for 600,000 milliseconds."

Symptom

ReportClientDocument.getPrintOutputController().getSavedXMLExportFormats() to retrieve saved XML export properties, the following message appears: "The request timed out because there has been no reply from the server for 600,000 milliseconds."

Reproducing the Issue

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Locale;
import com.crystaldecisions.sdk.exception.SDKException;
import com.crystaldecisions.sdk.framework.*;
import com.crystaldecisions.sdk.occa.managedreports.IReportAppFactory;
import com.crystaldecisions.sdk.occa.report.application.ReportClientDocument;
import com.crystaldecisions.sdk.occa.report.exportoptions.ExportOptions;
import com.crystaldecisions.sdk.occa.report.exportoptions.ReportExportFormat;
import com.crystaldecisions.sdk.occa.report.exportoptions.XMLExportFormatOptions;
import com.crystaldecisions.sdk.occa.report.application.PrintOutputController;
public class OpenManagedReport {
 /**
  * @param args
  * @throws SDKException
  * @throws ReportSDKException
  * @throws IOException
  */
 public static void main(String[] args) {
  try
  {   
   System.out.println("begin test");
   ReportClientDocument clientDoc = new ReportClientDocument();
   Locale locale = java.util.Locale.getDefault();
    ISessionMgr mgr = com.crystaldecisions.sdk.framework.CrystalEnterprise.getSessionMgr();
   IEnterpriseSession session = mgr.logon ("administrator", "", "cmsName", "secEnterprise");
   IReportAppFactory factory = (IReportAppFactory) session.getService("", "RASReportFactory");
   com.crystaldecisions.sdk.occa.infostore.IInfoStore infoStore = (com.crystaldecisions.sdk.occa.infostore.IInfoStore) session.getService("", "InfoStore");
   com.crystaldecisions.sdk.occa.infostore.IInfoObjects objs = infoStore.query("SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME='xml_export_blob.rpt'");
   clientDoc = factory.openDocument((com.crystaldecisions.sdk.occa.infostore.IInfoObject)objs.get(0),0, locale);
   System.out.println("open doc successful");
   ReportExportFormat exportFormat = ReportExportFormat.crystalReports;
   PrintOutputController printOutputController = clientDoc.getPrintOutputController();
          
   boolean blobFlag = printOutputController.getSavedXMLExportFormats().getXMLExportFormat(1).getExportBlobField();
         System.out.print("Export succeed " +blobFlag );
        
  }
  catch (Exception ex)
  {
   System.out.println(ex.toString());
  }
  
 }
}

  1. Change the logon details to log on to the enterprise according to your CMS name, user name and password.
  2. Save this .java file and run it.
  3. You will get the error message.

Cause

  • This issue occurs when the RAS SDK connects to a Report Application Server in UNIX, and the Report Application Server is started with the log file turned on.
  • The issue has been identified and logged under Problem Report ID ADAPT01106549.

Resolution

Issue has been resolved with Crystal Reports 2008 Service Pack 2 Fix Pack 2.

Keywords

RAS, ReportClientDocument, XML,, export, timed out, 600000 milliseconds, UNIX, ADAPT01106549. , KBA , BI-DEV-JAV , BI Software Development Kits (SDKs) - Java , Problem

Product

Crystal Reports 2008 V1