2010-11-30 27 views
0

我升級我們的SharePoint 2007安裝到SharePoint 2010的一個我遇到的問題是一個NullReferenceException當我去網站操作 - >站點設置 - >導航。我不確定在哪裏或如何開始調試此問題。有人有主意嗎?2010的Sharepoint的NullReferenceException

錯誤消息和堆棧跟蹤我越來越有:

[NullReferenceException]: Object reference not set to an instance of an object. 
    at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.FetchDynamicItems(PublishingWeb pubWeb, NodeTypes includedTypes, Boolean& websFetched, Boolean& pagesFetched) 
    at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.PopulateNavigationChildrenInner(NodeTypes includedTypes) 
    at Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNode.PopulateNavigationChildren(NodeTypes includedTypes) 
    at Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapNode.GetNavigationChildren(NodeTypes includedTypes, NodeTypes includedHiddenTypes, Boolean trimmingEnabled, OrderingMethod ordering, AutomaticSortingMethod method, Boolean ascending, Int32 lcid) 
    at Microsoft.SharePoint.Publishing.Internal.CodeBehind.AreaNavigationSettingsPage.AddChildrenToControl(String parentId, PortalSiteMapNode node, Int32 depth, Int32 maxDepth) 
    at Microsoft.SharePoint.Publishing.Internal.CodeBehind.AreaNavigationSettingsPage.InitializeNavigationEditSort() 
    at Microsoft.SharePoint.Publishing.Internal.CodeBehind.AreaNavigationSettingsPage.OnLoad(EventArgs e) 
    at System.Web.UI.Control.LoadRecursive() 
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
[HttpUnhandledException]: Exception of type 'System.Web.HttpUnhandledException' was thrown. 
    at System.Web.UI.Page.HandleError(Exception e) 
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
    at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
    at System.Web.UI.Page.ProcessRequest() 
    at System.Web.UI.Page.ProcessRequest(HttpContext context) 
    at ASP._layouts_areanavigationsettings_aspx.ProcessRequest(HttpContext context) 
    at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
    at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 

回答

0

我不得不改變 「的頁面」 到 「網頁」 的資源在14蜂巢\ osrvcore.en美國文件:

<Data Name="List_Pages_UrlName"> 
    <Value>WebPages</Value> //Change from "Pages" 
</Data> 

一旦我做到了,錯誤消失。

0

發生這種情況,因爲你必須存在於數據庫節點,但實際的SPSite或的SPWeb中不存在的內容數據庫。這表明一個或多個網站未完全遷移。

要調試這一點,編寫自定義工具,它會遍歷導航節點和嘗試實例作爲SPWeb對象。失敗將表明罪犯。

+0

好吧,我這樣做。這將不開放是Default.aspx的唯一節點,我以爲我可以跳過,並且題爲「的Sharepoint頂部導航欄」有一個URL的節點「SID 1002」。這看起來不像您描述的問題,因爲該節點的內容數據庫中沒有有效的URL。 – stomcavage 2010-12-01 21:18:34