zoukankan      html  css  js  c++  java
  • Report Service中报 RSClientController 未定义

    为了一个report service部署问题搞的头大,特意写下来,防止自己忘了.

    环境:

       report 服务器: win2008 64位

       web 服务器: win2008 + iis7

    开发时一切正常,第一次部署也没问题(所有的都在1台服务器上),将web应用部署到另外一台单独的服务器上问题来了

    页面上不停的报:

    RSClientController 未定义 这样的错误, 很多,没有一一记录.

    一查,原来网页中引用很多类似 Reserved.ReportViewerWebControl.axd?OpType=Resource& Version=9.0.30729.1& Name=Microsoft.Reporting.WebForms.Scripts.ReportViewer.js的URL,用来载入控件所需的 JS、图档等等,但全部传回HTTP 404,以找不到档案收场,看来是Reserved.ReportViewerWebControl.axd这个HttpHandler没被正确地注册所 致。

    从网上查资料得知,vs 2008在你拖入ReportViewer时会自动在web.config的system.web中加入HttpHandler Mapping:

    <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" /> <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate=" false" />

    但问题来了,在 IIS7上ASP.NET有两种执行模式,Classic Mode及Integrated Mode,web.config里HttpHandler等设定也变成有两区,system.web是给Classic Mode用的,system.webServer是给Integrated Mode用的。

    VS2008自 动加入HttpHandler设定只改了system.web区(大概是因为IIS7比VS2008晚发展),却没一并在 system.webServer区新增设定,而我的WebApp设定是用Integrated Mode执行,这下子等于没注册Reserved.ReportViewerWebControl.axd,自然以HTTP 404收场。

    在system.webServer加入以下的 HttpHandler设定:

    <add name="Reserved-ReportViewerWebControl-axd" path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" resourceType="Unspecified" preCondition="integratedMode" /> <add name="Reserved-ReportViewerWebControl-axd" path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture= neutral, PublicKeyToken=b03f5f7f11d50a3a" resourceType="Unspecified" preCondition="integratedMode" />


    问题解决

  • 相关阅读:
    从 HTTP 到 HTTPS
    一条很用的MSSQL语句
    MVC中 jquery validate 不用submit方式验证表单或单个元素
    深信服务发布SSL站点
    警告: 程序集绑定日志记录被关闭(IIS7 64位系统)
    Winform中子线程访问界面控件时被阻塞解决方案
    C# Winform中执行post操作并获取返回的XML类型的数据
    vs2010 vs2012中增加JSon的支持
    WebService应用一例,带有安全验证
    C#事件、委托简单示例
  • 原文地址:https://www.cnblogs.com/Kazaf/p/2366706.html
Copyright © 2011-2022 走看看