Tuesday, September 22, 2009

Error in Performance Point 2007

I was involved in a Project with Microsoft Performance Point 2007 that requires Integration with lot of PPS Web Service APIs and 3.5 Asp.NET Application

I logged most the issues I faced and I’d like to leave this thread as an open discussion thread to help other in there deployments and Development with PPS.

Below are a list of Issues and Fixes that will help you solve your problem.

Configuring PPS on Production Environment

1. Install PPS on the SharePoint Server

2. Configure PPS to Install Dashboard Viewer for SharePoint on the Moss Server

3. Please note the following Steps will be done on all Moss Servers in the production farm

a. Locate the web.config file for your SharePoint site, as well as the PerformancePoint Monitoring Designer web service and its Preview directory.

clip_image002

b. Use any text editor (or Visual Studio), and do a search/replace to replace all references to System.Web.Extensions 1.0.61025.0 to .Net's3.5.0.0.

c. Add the following line to your web.config under the <configuration> node:

<runtime> 


    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 


      <dependentAssembly> 


        <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 


        <bindingRedirect oldVersion="1.0.61025.0" newVersion="3.5.0.0" /> 


      </dependentAssembly> 


    </assemblyBinding> 


</runtime>





Remember there are 3 web.configs that needs to change here:



i. under PPSMonitoring/WebService



ii. under PPSMonitoring/Preview



iii. SharePoint Site[MM1]



4. Open your SharePoint web.config for the current web application and find HTTPHandlers replace it with the following Set[MM2]




<httpHandlers>

<remove verb="GET,HEAD,POST" path="*" />

<add verb="GET,HEAD,POST" path="*" type="Microsoft.SharePoint.ApplicationRuntime.SPHttpHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

<add verb="OPTIONS,PROPFIND,PUT,LOCK,UNLOCK,MOVE,COPY,GETLIB,PROPPATCH,MKCOL,DELETE,(GETSOURCE),(HEADSOURCE),(POSTSOURCE)" path="*" type="Microsoft.SharePoint.ApplicationRuntime.SPHttpHandler, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

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

<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />

<add verb="*" path="_vti_bin/ReportServer" type="Microsoft.ReportingServices.SharePoint.Soap.RSProxyHttpHandler, RSSharePointSoapProxy, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />

<add verb="*" path="Reserved.ReportViewerWebPart.axd" type="Microsoft.ReportingServices.SharePoint.UI.WebParts.WebPartHttpHandler, Microsoft.ReportingServices.SharePoint.UI.WebParts, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />

</httpHandlers>




5. If you installed URL Scan in our production Environment (as in testing) you may face a problem on all Images are not Displayed in the PPS Dashboard Viewer WP The Solution would be the following



a. Open the following folder “C:\Windows\System32\inetsrv\urlscan”



b. Edit URLScan.ini file



i. AllowDotsInPath = 0 to 1



6. Go to the following path in both SharePoint Servers



C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\wpresources



Replace the content of the web.config with the following




<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<configuration>

<system.web>

<customErrors mode="Off"/>

<httpHandlers>

<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

<remove verb="*" path="*.asmx" />

<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />

</httpHandlers>

</system.web>

<runtime>

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

<dependentAssembly>

<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" culture="neutral" />

</dependentAssembly>

</assemblyBinding>

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Dsp" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Dsp.OleDb" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Dsp.SoapPT" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Dsp.Sts" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Dsp.XmlUrl" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.intl" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Library" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

<dependentAssembly>

<assemblyIdentity name="Microsoft.SharePoint.Security" publicKeyToken="71e9bce111e9429c" culture="neutral" />

<bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0" />

</dependentAssembly>

</assemblyBinding>

</runtime>

</configuration>


No comments: