We now have it working on our end. I like the new look and feel of SPS12. Below are the steps to getting it working.
While BSM 2005 will run on pre-released version of WSS v3, some additional preparation is necessary:
- Server.msi fails on the SharePoint extended site pre-req check . To workaround this:
- Open regedit
- Look under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions
- Notice that there is no subkey named Ports
- Run the below VBS script
- This will create the Ports subkey in the registry
- Now install server.msi (the sharepoint extended site validation will now pass)
- (Optional) You should now manually delete the Ports subkey that was created
- The App Pool of the Business Scorecard Manager Web Service website needs to be changed.
- By default, this is set to the same app pool as the SharePoint site, but .NET 1.1 and .NET 2.0 can't be hosted in the same app pool
- Create a new App Pool, set the identity to "Network Service" (or a domain account if you are using one)
- Change the App Pool of the "Business Scorecard Manager Web Service" website to this new one
- The web.config file under _wpresources is wrong (appears to be a WSS bug). This needs to be fixed manually:
- Open iismgr and open the SharePoint web site the server is installed on
- Right click on the "_wpresources" vdir and open it
- Edit the web.config file
- Remove the line " <trust level="Full" originUrl="" />"
- Now you can publish a scorecard from the builder normally. However, the "deploy to SharePoint" feature does not work with WSS v3 (the page templates are different.
- You can, however, create Scorecard pages manually, by adding Scorecard web parts to a web part page
Script mentioned above:
RegisterPorts
WSCript.Echo "done."
Sub RegisterPorts()
Set GetWebSiteRoot = Nothing
dim oWebServer
dim oWebService
dim mbRootPath
dim bFound
bFound = false
mbRootPath = "IIS://localhost/W3SVC"
set oWebService = GetObject(CStr(mbRootPath))
if( Err.number <> 0) then
WScript.Echo "Unable to get Root IIS Object"
Exit Sub
end if
For Each oWebServer In oWebService
if ((0 = StrComp(Cstr(oWebServer.Class), CStr("IIsWebServer"), 1))) then
RegisterPort oWebServer.Name
end if
Next
End Sub
Sub RegisterPort(port)
Set WshShell = CreateObject("WScript.Shell")
Dim keyName
keyName = "Port /LM/W3SVC/" & port & ":"
WshShell.RegWrite "HKLM\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\Ports\" & keyName, ""
dim fpKey
fpKey = "HKLM\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\Ports\" & keyName & "\frontpageroot"
dim val
val = ReadRegKey(fpKey)
if (val = "") then
WshShell.RegWrite fpKey, ""
end if
End Sub
Function ReadRegKey(key)
ReadRegKey = ""
Set WshShell = CreateObject("WScript.Shell")
On Error Resume Next
dim val
val = WshShell.RegRead(key)
' WScript.Echo key & " = " & val
ReadRegKey = val
end function
Posted
Thu, Dec 29 2005 5:25 PM
by
Patrick Husting