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" />


问题解决

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值