I hope you guys can help me with this weird issue.
I have three sub-sites (Site A, Site B, and Site C) under a main site collection in SharePoint 2010. Each sub-site has child sub-sites as well. I can access the Content & Structure page (_layouts/sitemanager.aspx) for the site collection root, Site A and Site B without a problem. But I get a runtime error when I try to access Site C content & structure page.
The same error appears for all sub-sites under Site C. Also I can access the settings page for all the sites without a problem. But for Site C and its children I can't access the navigation settings page.
When I checked the logs and Event Viewer I found the following error:
Exception information:
Exception type: NullReferenceException
Exception message: Object reference not set to an instance of an object.
Request information:
Request URL: http://sharepoint/_Layouts/sitemanager.aspx?Source={WebUrl}_layouts/settings.aspx
Request path: /_Layouts/sitemanager.aspx
User host address: fe60::444:762c:476e:9f61/
User: devee
Thread information:
Thread ID: 56
Thread account name: admin
Is impersonating: False
Stack trace: at Microsoft.SharePoint.Publishing.Internal.WebControls.ObjectSerializer.DeleteAllowed(Boolean checkPermissions) at Microsoft.SharePoint.Publishing.Internal.WebControls.SmtButtonField.FormatDataValue(Object dataTextValue, Boolean encode) at System.Web.UI.WebControls.BoundField.OnDataBindField(Object sender, EventArgs e)
at Microsoft.SharePoint.Publishing.Internal.WebControls.SmtButtonField.OnDataBindField(Object sender, EventArgs e)
at System.Web.UI.Control.OnDataBinding(EventArgs e)
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at System.Web.UI.Control.DataBindChildren()
at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
at System.Web.UI.WebControls.GridView.CreateRow(Int32 rowIndex, Int32 dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState, Boolean dataBind, Object dataItem, DataControlField[] fields, TableRowCollection rows, PagedDataSource pagedDataSource)
at System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding)
at Microsoft.SharePoint.WebControls.SPGridView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) at
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) at System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerable data)at System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data)
at System.Web.UI.WebControls.DataBoundControl.PerformSelect()
at System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound()
at System.Web.UI.WebControls.GridView.OnPreRender(EventArgs e)
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
I checked the following items:
- I checked all lists under Site C and found no issues in them.
- I restarted the sharepoint services and timer several times.
- I made sure no new web parts were installed and as I understand if the problem was in a feature or a web part is should've affected other sites within the site collection, right?
The site was working fine until last week and I can't figure out the change the caused this error.
So please let me know if you've faced similar issues or have any suggestions.