crystal reports viewer does not load when asp.net application is deployed to server

31,138

Solution 1

This is quite common with Crystal Reports .net deployments. There tend to be differences (sometimes subtle) between the development machine(s) and the production server(s).

First things to check are:

  • Architecture (x86, x64)
  • Crystal Runtime Version

If these don't match you're going to have problems :)

Solution 2

I had this same issue and 'was able to resolve it. Here is the solution I did:

Some deployment notes per Crystal Reports:

A. Download and install Crystal Reports from this URL: http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_64bit_13_0_1.zip

B. Do following to update your web app/site in IIS so Crystal Report viewer will work:

Crystal Reports redistributable package is installing the report view files on a location different than where the Visual Studio 2010 Crystal Report control expects it to be, thus, the report was not getting rendered. I saw this issue upon looking at the HTML output and experimented with copying the "viewer" files where the control expects them to be. After doing this, it started to work.

Copy the "crystal report viewer" files from this install location: C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers Onto this folder: \aspnet_client\system_web\4_0_30319\crystalreportviewers13 (In our qa2 server, the folder is: D:\websites\qa2-internal.credomobile.com\aspnet_client\system_web\4_0_30319\crystalreportviewers13)

Share:
31,138
njj56
Author by

njj56

Updated on March 14, 2020

Comments

  • njj56
    njj56 about 4 years

    On my local build, when I open the page that has the crystal reports viewer - everything loads and looks fine (the crystal reports viewer actually shows up on the page). when I copied this over to the server for the web (and installed the CR framework for the correct version) - the crystal reports viewer does not load when opening the page, so I just get a blank page that says done with nothing loaded. Has anyone else ran into this issue?

    edit - after restarting the server i am getting the following error. - error is at line 24

    when running on local build still works, code on server is exactly the same, not sure why I am receiving this error. Thanks

    Server Error in '/' Application.
        --------------------------------------------------------------------------------
    
        Retrieving the COM class factory for component with CLSID {4DB2E2BB-78E6-4AEA-BEFB-        FDAAB610FD1B} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E). 
    Description: An unhandled exception occurred during the execution of the current web     request. Please review the stack trace for more information about the error and where it originated in the code. 
    
    Exception Details: System.IO.FileNotFoundException: Retrieving the COM class factory for component with CLSID {4DB2E2BB-78E6-4AEA-BEFB-FDAAB610FD1B} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E).
    
    Source Error: 
    
    
    Line 22:         ReportSourceID="McNeil_source" ToolbarImagesFolderUrl="" ToolPanelWidth="200px" 
    Line 23:         Width="2304px" HasRefreshButton="True"></CR:CrystalReportViewer>
    Line 24:     <CR:CrystalReportSource ID="McNeil_source" runat="server">
    Line 25:         <Report FileName="CrystalReport2.rpt">
    Line 26:         </Report>
    
    
    Source File: C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx    Line: 24 
    

    here is the stack trace

    [FileNotFoundException: Retrieving the COM class factory for component with CLSID {4DB2E2BB-78E6-4AEA-BEFB-FDAAB610FD1B} failed due to the following error: 8007007e The specified module could not be found. (Exception from HRESULT: 0x8007007E).]
       CrystalDecisions.CrystalReports.Engine.ReportDocument..cctor() +193
    
    [TypeInitializationException: The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument' threw an exception.]
       CrystalDecisions.CrystalReports.Engine.ReportDocument..ctor() +44
       CrystalDecisions.ReportSource.CachedReport.get_ReportDocument() +39
       CrystalDecisions.Web.CrystalReportSource.set_Report(Report value) +218
       ASP.excel_import_aspx.__BuildControlMcNeil_source() in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:24
       ASP.excel_import_aspx.__BuildControlform1() in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:16
       ASP.excel_import_aspx.__BuildControlTree(excel_import_aspx __ctrl) in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:1
       ASP.excel_import_aspx.FrameworkInitialize() +46
       System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +54
       System.Web.UI.Page.ProcessRequest() +78
       System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
       System.Web.UI.Page.ProcessRequest(HttpContext context) +49
       ASP.excel_import_aspx.ProcessRequest(HttpContext context) +37
       System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +100
       System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
    

    i removed the 32 bit version, installed the 64 and got a new error, here it is

    Server Error in '/' Application.
    --------------------------------------------------------------------------------
    
    Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
    
    Exception Details: System.IO.FileLoadException: Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
    
    Source Error: 
    
    
    Line 18:     
    Line 19:     </div>
    Line 20:     <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" 
    Line 21:         AutoDataBind="True" GroupTreeImagesFolderUrl="" Height="962px" 
    Line 22:         ReportSourceID="McNeil_source" ToolbarImagesFolderUrl="" ToolPanelWidth="200px" 
    
    
    Source File: C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx    Line: 20 
    
    Stack Trace: 
    
    
    [FileLoadException: Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)]
       CrystalDecisions.Web.CrystalReportViewer..cctor() +0
    
    [TypeInitializationException: The type initializer for     'CrystalDecisions.Web.CrystalReportViewer' threw an exception.]
       CrystalDecisions.Web.CrystalReportViewer..ctor() +19
       ASP.excel_import_aspx.__BuildControlCrystalReportViewer1() in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:20
       ASP.excel_import_aspx.__BuildControlform1() in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:16
       ASP.excel_import_aspx.__BuildControlTree(excel_import_aspx __ctrl) in C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\excel import.aspx:1
       ASP.excel_import_aspx.FrameworkInitialize() +46
       System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +54
       System.Web.UI.Page.ProcessRequest() +78
       System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
       System.Web.UI.Page.ProcessRequest(HttpContext context) +49
       ASP.excel_import_aspx.ProcessRequest(HttpContext context) +37
       System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +100
       System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
    
    
    
    
    --------------------------------------------------------------------------------
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET     Version:4.0.30319.1 
    

    I am also recieving this error in other pages on the site

    Server Error in '/' Application.

    Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

    Parser Error Message: Could not load file or assembly 'CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The system cannot find the file specified.
    
    Source Error: 
    
    
    Line 34:           debugging ASP.NET files.
    Line 35:     -->
    Line 36:     <compilation defaultLanguage="vb" debug="true" targetFramework="4.0">    <assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0,     Culture=neutral, PublicKeyToken=692fbea5521e1304"/><add     assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral,     PublicKeyToken=692fbea5521e1304"/><add assembly="CrystalDecisions.Shared,     Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/><add     assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral,     PublicKeyToken=692fbea5521e1304"/><add     assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral,     PublicKeyToken=692fbea5521e1304"/></assemblies></compilation>
    Line 37:     <!--  CUSTOM ERROR MESSAGES
    Line 38:           Set customErrors mode="On" or "RemoteOnly" to enable custom error     messages, "Off" to disable. 
    
    
    Source File: C:\Program Files (x86)\CruiseControl.NET\server\iPlan 7 Layer QA\WorkingDirectory\web.config    Line: 36 
    
    
    --------------------------------------------------------------------------------
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET     Version:4.0.30319.1