Crystal Reports Viewer не загружается при развертывании приложения asp.net на сервере - PullRequest
1 голос
/ 09 марта 2012

В моей локальной сборке, когда я открываю страницу с программой просмотра отчетов Crystal - все загружается и выглядит хорошо (программа просмотра отчетов Crystal фактически отображается на странице).когда я скопировал это на сервер для Интернета (и установил платформу CR для правильной версии) - программа просмотра отчетов Crystal не загружается при открытии страницы, поэтому я просто получаю пустую страницу с надписью «ничего не загружено».Кто-нибудь еще сталкивался с этой проблемой?

edit - после перезапуска сервера я получаю следующую ошибку.- ошибка в строке 24

, когда работа в локальной сборке все еще работает, код на сервере точно такой же, не знаю, почему я получаю эту ошибку.Спасибо

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 

вот трассировка стека

[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

я удалил 32-битную версию, установил 64 и получил новую ошибку, вот она

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 

Я также получаю эту ошибку на других страницах сайта

Ошибка сервера в приложении '/'.

Ошибка конфигурации Описание: во время обработки файла конфигурации, необходимого дляобслуживайте этот запрос.Пожалуйста, просмотрите подробности конкретной ошибки ниже и измените файл конфигурации соответствующим образом.

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 

Ответы [ 3 ]

2 голосов
/ 14 марта 2012

У меня была такая же проблема, и я смог ее решить.Вот решение, которое я сделал:

Некоторые примечания по развертыванию для Crystal Reports:

A.Загрузите и установите Crystal Reports с этого URL: http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_64bit_13_0_1.zip

B.Чтобы обновить веб-приложение / сайт в IIS, чтобы программа просмотра отчетов Crystal Report работала, выполните следующие действия:

Распространяемый пакет Crystal Reports устанавливает файлы представления отчета в месте, отличном от того, в котором его ожидает элемент управления Visual Studio 2010 Crystal Report.Таким образом, отчет не был предоставлен.Я увидел эту проблему при просмотре вывода HTML и экспериментировал с копированием файлов «просмотра» там, где их ожидает элемент управления.После этого он начал работать.

Скопируйте файлы «Crystal Report Viewer» из этого места установки: C: \ Program Files (x86) \ SAP BusinessObjects \ Crystal Reports для .NET Framework 4.0 \ Common \Crystal Reports 2011 \ crystalreportviewers В эту папку: \ aspnet_client \ system_web \ 4_0_30319 \ crystalreportviewers13 (На нашем сервере qa2 эта папка находится в каталоге: D: \ sites \ qa2-internal.credomobile.com \ aspnet_client \ system_web \ 4_0_30319 \ 101report_view 2*

2 голосов
/ 09 марта 2012

Это часто встречается при развертывании Crystal Reports .net.Между машинами разработки и производственными серверами существуют различия (иногда незначительные).

Прежде всего необходимо проверить:

  • Архитектура (x86, x64)
  • Crystal Runtime Version

Если они не совпадают, у вас будут проблемы:)

0 голосов
/ 09 марта 2012

Не удалось загрузить файл или сборку 'log4net ...

По крайней мере с 64-битной версией, которая является проблемой в трассировке стека.Установите log4net на сервере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...