ActiveReports 12
Configure HTTPHandlers in IIS 7 and IIS 8
ActiveReports 12 > ActiveReports User Guide > How To > Customize, Localize, and Deploy > Configure HTTPHandlers in IIS 7 and IIS 8

HttpHandlers are included in the Professional edition of ActiveReports to allow you to quickly and easily display reports in the browser.

Follow these steps to configure the ActiveReports HTTP handlers in IIS 7.x so that you can link directly to reports in your Web applications. Once the handlers are configured, you can automatically run a report and view it in the browser from a URL.

Classic Mode

If any part of your Web application is not supported in Integrated Mode, you can run it using the Classic .NET AppPool.

To run your Web application in the Classic .NET Application Pool

  1. In the Control Panel, open Administrative Tools, then Internet Information Services (IIS) Manager.
  2. In the Internet Information Services (IIS) Manager window that appears, in the left pane under Connections, expand the Sites node and select the Web application you want to configure.
  3. To the right of the Handler Mappings pane that appears, under Actions, click Basic Settings.
  4. In the Edit Site dialog that appears, click the Select button.
  5. In the Select Application Pool dialog that appears, drop down the Application pool, select Classic .NET AppPool, and click OK.
  6. Back in the Edit Site dialog, click OK to accept the changes.

To configure ActiveReports HTTP handlers to enable report linking in your Web applications

  1. In the Control Panel, open Administrative Tools, then Internet Information Services (IIS) Manager.
  2. In the Internet Information Services (IIS) Manager window that appears, in the left pane under Connections, expand the Sites node and select the Web application you want to configure.
  3. In the site's Home pane that appears, under IIS, double-click Handler Mappings.
  4. To the right of the Handler Mappings pane that appears, under Actions, click Add Script Map.
  5. In the Add Script Map dialog that appears, enter the information from the first row of the table below.
    Note: If you have a 64 bit app pool, add script mappings for the 64 bit version of the aspnet_isapi.dll by navigating to C:\Windows\Microsoft.NET\Framework64\v*\aspnet_isapi.dll.
    Request path Executable Name
    *.AR12 aspnet_isapi.dll version to match your app pool ActiveReports 12 Script Mapping
    *.AR12Web aspnet_isapi.dll version to match your app pool ActiveReports 12 Cache Item Script Mapping
    *.rpx aspnet_isapi.dll version to match your app pool ActiveReports 12 RPX Script Mapping
    *.rdlx aspnet_isapi.dll version to match your app pool ActiveReports 12 RDLX Script Mapping
    *.rdl aspnet_isapi.dll version to match your app pool ActiveReports 12 RDL Script Mapping
    *.ActiveReport aspnet_isapi.dll version to match your app pool ActiveReports 12 Script Mapping
  6. Click the Request Restrictions button and ensure that the Invoke handler only if request is mapped to check box is cleared.
  7. Click OK to close the window and add the script mapping.
  8. Repeat for each script mapping in the table above.

To add handlers without configuring IIS 7 or IIS 8 using the Classic .NET AppPool

  1. In your Web application, open the Web.config file and add code like the following between the <system.web> and </system.web> tags, changing the ActiveReports Version number on each line to match the version installed on your machine.
    Paste inside the <system.web> tags.
    Copy Code
    <httpHandlers>
        <add verb="*" path="*.AR12" type="GrapeCity.ActiveReports.Web.Handlers.ReportBinariesStreamer, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
        <add verb="*" path="*.ActiveReport" type="GrapeCity.ActiveReports.Web.Handlers.CompiledReportHandler, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
        <add verb="*" path="*.rpx" type="GrapeCity.ActiveReports.Web.Handlers.RpxHandler, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
        <add verb="*" path="*.rdl" type="GrapeCity.ActiveReports.Web.Handlers.RdlxHandler, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
        <add verb="*" path="*.rdlx" type="GrapeCity.ActiveReports.Web.Handlers.RdlxHandler, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
        <add verb="*" path="*.AR12Web" type="GrapeCity.ActiveReports.Web.Handlers.WebCacheAccessHandler, GrapeCity.ActiveReports.Web.v12, Version=12.0.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" />
    </httpHandlers>
    
  2. In your Web application, open the Web.config file and add code like the following between the <system.webServer> and </system.webServer> tags depending on the .Net Framework version 2.0 or 4.0 installed on your machine:

    .Net 2.0

    Paste inside the <system.webServer> tags.
    Copy Code
    <handlers>
          <add name="AR11Rpx" path="*.rpx" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
          <add name="AR11Rdlx" path="*.rdlx" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
          <add name="AR11" path="*.AR12" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
          <add name="AR11Web" path="*.AR12Web" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
          <add name="AR11Rdl" path="*.rdl" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
          <add name="ActiveReport" path="*.ActiveReport" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
    </handlers>
    

    .Net 4.0

    Paste inside the <system.webServer> tags.
    Copy Code
    <handlers>
    <add name="AR11Rpx" path="*.rpx" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    <add name="AR11Rdlx" path="*.rdlx" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    <add name="AR11Rdl" path="*.rdl" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    <add name="AR11" path="*.AR12" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    <add name="AR11Web" path="*.AR12Web" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    <add name="ActiveReport" path="*.ActiveReport" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32"/>
    </handlers>

    Note: If you have a 64 bit Web application, change the preCondition attribute on each line to classicMode,runtimeVersionv2.0,bitness64, or in ASP.NET 4, change it to classicMode,runtimeVersion4.0,bitness64.

Integrated Mode

To configure ActiveReports HTTP handlers to enable report linking in your Web applications

  1. In the Control Panel, open Administrative Tools, then Internet Information Services (IIS) Manager.
  2. In the Internet Information Services (IIS) Manager window that appears, in the left pane under Connections, expand the Sites node and select the Web application you want to configure.
  3. In the site's Home pane that appears, under IIS, double-click Handler Mappings.
  4. To the right of the Handler Mappings pane that appears, under Actions, click Add Managed Handler.
  5. In the Add Managed Handler dialog that appears, enter the information from the first row of the table below.
    Request path Type Name
    *.AR12 GrapeCity.ActiveReports.Web.Handlers.ReportBinariesStreamer ActiveReports 12 integrated handler mapping
    *.AR12Web GrapeCity.ActiveReports.Web.Handlers.WebCacheAccessHandler ActiveReports 12 cache item integrated handler mapping
    *.rpx GrapeCity.ActiveReports.Web.Handlers.RpxHandler ActiveReports 12 RPX integrated handler mapping
    *.rdlx GrapeCity.ActiveReports.Web.Handlers.RdlxHandler ActiveReports 12 RDLX integrated handler mapping
    *.rdl GrapeCity.ActiveReports.Web.Handlers.RdlxHandler ActiveReports 12 RDL integrated handler mapping
    *.ActiveReport GrapeCity.ActiveReports.Web.Handlers.CompiledReportHandler ActiveReports 12 integrated handler mapping
  6. Click the Request Restrictions button and ensure that the Invoke handler only if request is mapped to check box is cleared.
  7. Click OK to close the window and add the handler mapping.
  8. Repeat for each handler mapping in the table above.

To add handlers without configuring IIS 7 or IIS 8 using the DefaultAppPool

In your Web application, open the Web.config file and add code like the following between the <system.webServer> and </system.webServer> tags, changing the ActiveReports Version number on each line to match the version installed on your machine.

Paste inside the <system.webServer> tags.
Copy Code
<add verb="*" path="*.ar12" type="GrapeCity.ActiveReports.Web.Handlers.ReportBinariesStreamer, GrapeCity.ActiveReports.Web.v12, Version=12.x.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR12_ReportBinariesStreamer" resourceType="Unspecified" preCondition="integratedMode"/>           
<add verb="*" path="*.ar12Web" type="GrapeCity.ActiveReports.Web.Handlers.WebCacheAccessHandler, GrapeCity.ActiveReports.Web.v12, Version=12.x.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR12_WebCacheAccessHandler" resourceType="Unspecified" preCondition="integratedMode"/>
<add verb="*" path="*.ActiveReport" type="GrapeCity.ActiveReports.Web.Handlers.CompiledReportHandler, GrapeCity.ActiveReports.Web.v12, Version=12.x.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR12_CompiledReportHandler" resourceType="Unspecified" preCondition="integratedMode"/>
<add verb="*" path="*.rpx" type="GrapeCity.ActiveReports.Web.Handlers.RpxHandler, GrapeCity.ActiveReports.Web.v12, Version=12.x.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR12_RpxHandler" resourceType="Unspecified" preCondition="integratedMode"/>
<add verb="*" path="*.rdl,*.rdlx" type="GrapeCity.ActiveReports.Web.Handlers.RdlxHandler, GrapeCity.ActiveReports.Web.v12, Version=12.x.xxxx.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR12_RdlxHandler" resourceType="Unspecified" preCondition="integratedMode"/>

Note: If you have a 64 bit Web application, change the preCondition attribute on each line to integratedMode,runtimeVersionv2.0,bitness64, or in ASP.NET 4, change it to integratedMode,runtimeVersion4.0,bitness64.

See Also