Reputation: 461
We are trying to move our reports from Visual 2008 to Visual 2010, but we are not being capable of making ASP.NET ReportViewer control work on our IIS 7.5 machines. The OS is Windows 7.
We have moved all our refernces to Microsoft.Reporting.WebForms 10.0 in code and in config files as well. Our Web.config file is the following sections regarding ReportViewer:
<system.web>
<httpHandlers>
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
validate="false" />
</httpHandlers>
<hostingEnvironment shutdownTimeout="30" shadowCopyBinAssemblies="false" />
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="Microsoft.Build.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Management, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.Shared, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
</assemblies>
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</buildProviders>
</compilation>
<authentication mode="Windows" />
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" />
<httpRuntime requestValidationMode="2.0" />
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add verb="GET" name ="CrystalImageHandler" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
</handlers>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="4294967295" />
</requestFiltering>
</security>
</system.webServer>
When loading the aspx which contains the ReportViewer control we see only the toolbar of the Report Viewer and the rest of the page is blank. The source code of that page tells the following:
The Report Viewer Web Control HTTP Handler has not been registered in the application's web.config file. Add to the system.web/httpHandlers section of the web.config file, or add to the system.webServer/handlers section for Internet Information Services 7 or later.
We know that ReportViewer 10.0 does not work in classic mode and so the application pool is configured to be Integrated. We have tried removing the handles section from the system.web but with no luck.
Anyone could give us a clue of how to get a working configuration of an ASP.NET app with Report Viewer 10.0 over IIS 7.5?
Many thanks in advance.
Jose Antonio Arroba
Upvotes: 4
Views: 12954
Reputation: 1613
Try to add
<configuration>
<system.webServer>
<handlers>
<add name="Reserved-ReportViewerWebControl-axd" path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler" resourceType="Unspecified" />
.......
in web.config
Upvotes: 0
Reputation: 31
We had a similar problem when moving our web page from IIS6.0 to IIS7.5 we had to move our httpH andlers from to see code sample below
<defaultDocument>
<files>
<add value="home.aspx" />
</files>
</defaultDocument>
<modules>
<add name="AccessDeniedModule" type="Senate.Leagis.Web.Common.Handlers.AccessDeniedModule, Senate.Leagis.Web, Culture=neutral, PublicKeyToken=132b49799d170825" />
</modules>
<handlers>
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</handlers>
Upvotes: 3
Reputation: 635
Had the same issue this morning. It looks like your web.config handlers are fine. Hint: if you need to know they are not fine, try viewing with chrome. It tended to show me error messages IE wasn't. Anyways, I solved my problem by adding an HTTP-Handler to my IIS7.5 In IIS manager, go to Handler Mappings and register the handler. Request Path:Reserved.ReportViewerWebControl.axd, Type select the correct version, click on Request Restrictions and specify "One of the following verbs" as GET,HEAD,POST,DEBUG You might find the ending part of here useful
Upvotes: 1