|Product||Progress® Telerik® Reporting|
|Report Viewers||ASP.NET WebForms Report Viewer|
'ReportViewer' is undefined.
- Missing preCondition attribute of the report viewer handler's registration in the <system.webServer><handlers> section, when the application is hosted on IIS7, i.e. the handler should look like this:
<system.webServer> <handlers> <add name="Telerik.ReportViewer.axd_*" path="Telerik.ReportViewer.axd" verb="*" type="Telerik.ReportViewer.WebForms.HttpHandler, Telerik.ReportViewer.WebForms, Version=x.x.x.x, Culture=neutral, PublicKeyToken=a9d7983dfcc261be" preCondition="integratedMode" /> </handlers> <validation validateIntegratedModeConfiguration="false" /> </system.webServer>
Try changing the application pool between DefaultAppPool and Classic .Net AppPool.
Remove/disable compression modules (if any) as they may somehow interfere with the viewer's handler.
Run the application, open a new tab in the browser and directly request the viewer's resource by using the following url:
This should give more detailed information about the error.
If authorization is used, it is possible that this somehow restricts the access to the HTTP handler used by the viewer. Please, add the following <location> element to your web.config to make sure the handler is accessible at all times:
<location path="Telerik.ReportViewer.axd"> <system.web> <authorization> <allow users="*"/> </authorization> </system.web> </location>
The error may also occur if you're trying to reference the viewer's client-side object prior to the control registration on the page i.e:
If you are still having problems, please use a web debugging proxy (e.g. Fiddler Jam) and check what is the response for the /ReportViewer.axd?name=Resources.ReportViewer.js&version=x.x.x.x&optype=Resource request or any request of such kind.
Substitute Version=X.X.X.X with the exact assembly version you are using!