重要更新: Waldek Mastykarz 已张贴在这里的一种变通方法: http://blog.mastykarz.nl/inconvenient-sharepoint-2010-content-query-web-part-anonymous-access/.
</最后更新>
这一周, 我和我的团队就升级了客户的公共互联网网站从青苔到 SP 2010. MOSS 站点使用 CQWP 在几个地方.
我们经历了非常详细的过程,以确保准确性, 质量和所有的好东西. 尽管,, 我们遇到的问题在 11 个小时,我们不期望或直到很晚才发现. 具体, 我们的 CQWP 不会呈现为匿名用户. 它呈现为作者查找 (谁在登录), 但它不能显示匿名用户的内容.
我们做了大量的研究,这些都是的参数和我们采取隔离行为的行动:
- CQWP 将呈现细时它拉从自定义列表内容.
- CQWP 将呈现从每库内容.
- 它不会呈现内容来自 /SiteCollectionImages
- 我们创建一个新的文档库和一些文档上载到它. 我们不做向库中添加任何内容类型 — — 这是一个简单的与没有自定义框文档库. 现有 CQWP 不能从它读取.
- 我们创建了一个新的页面,并将 CQWP 添加到它使用所有的默认值. 它不会呈现为匿名.
- 我们 (有点仓卒) 建立了一个新的 SP 2010 环境, 直开箱即用再次和复制这种行为.
底线, 它出现在 SP2010 CQWP 不能呈现内容的匿名用户,当数据源是一个文档库. 可这是真的吗?
这是我们看到在日志中的错误:
Web 部件标题: 内容查询 Web 部件 653d91fb-2f83-4e6a-83af-1f39e8939f0a
07/30/2010 12:03:56.90 w3wp.exe (0x0F30) 0x 1540 SharePoint 基础 Web 部件 89a1 高错误执行 web 部件时: System.NullReferenceException: 未设置到对象的实例的对象引用. 在 Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.SetDocumentIconUrlAndOnClickString(SPWeb web, DataRow 行, 字符串 strDefaultItemOpen, 布尔 fSetDocIcon, 布尔 fSetOnClick, 字符串 fileRefColumnRef, 字符串 progIdColumnRef, 字符串 fsobjTypeColumnRef, 字符串 permMaskColumnRef) 在 Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.PreProcessForDocumentIconAndOnClickAttribute() 在 Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.AddContentQueryData() 在 Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.GetXPathNavigator(字符串 viewPath) 在 Microsoft.SharePoint.WebPartPages.DataFormWebPart…. 653d91fb-2f83-4e6a-83af-1f39e8939f0a
它似乎有点不可能 CQWP 不适合匿名用户. 如果你知道更多关于这, 请张贴评论.
</结束>
订阅我的博客.
跟我在 Twitter 上 http://www.twitter.com/pagalvin