标记档案: CQWP

SP 2010 CQWP, 文档库和匿名用户

重要更新: 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