Symptom
Consider the following scenario:
We
- In the xslt:
- <xsl:param name="CustomItem">1</xsl:param>
<xsl:variable name="Rows" select="/dsQueryResponse/Custom_Listings/Rows/Row[@ID = $CustomItem]" />
- <xsl:param name="CustomItem">1</xsl:param>
In this scenario, we receive the following error message:
w3wp.exe (0x1104) 0x1670 CMS Publishing 8vzh
Unexpected PortalSiteMapProvider was unable to fetch current node, request URL:
/example/path/here/custom/pages/opportunitydetails.aspx, message: No
item exists at
http://SERVER/example/path/here/custom/pages/opportunitydetails.aspx?ID=20.
may been or by user.,
stack trace: at Microsoft.SharePoint.SPContext.get_Item() at
Microsoft.SharePoint.SPContext.get_ListItem() at
Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider.get_CurrentNode()
Cause
When
we try passing the Query Parameter Name as ID to the .aspx Page (which
itself is the record in the document library) Sharepoint loses track of
what ID is used for. Sharepoint no longer knows if ID is the document in
the document library it uses to identify documents/pages on the server. Our solution should not be using a variable named ID.
Resolution
Change
the query string parameter from ID to CustomID. Then change the details
page from QueryString(ID) to QueryString(CustomID). Once this is done
the page will display with no errors.
More Information
DISCLAIMER
MICROSOFT AND/OR WARRANTIES ABOUT THE SUITABILITY, RELIABILITY MAY INCLUDE TECHNICAL INACCURACIES MAY BE REVISED AT ANY TIME WITHOUT NOTICE.
TO THE MAXIMUM EXTENT PERMITTED OR ITS SUPPLIERS DISCLAIM AND EXCLUDE ALL REPRESENTATIONS, WARRANTIES, AND CONDITIONS WHETHER EXPRESS, IMPLIED OR CONDITIONS OF TITLE, NON INFRINGEMENT, SATISFACTORY CONDITION OR QUALITY, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE MATERIALS.
Properties
Article ID: 972225 - Last Review: 06/08/2009 10:25:42 - Revision: 1.0
Applies to
- Microsoft Office SharePoint Server 2007
- Microsoft Windows SharePoint Services 3.0
Keywords:
- kbrapidpub kbnomt KB972225