Bản cập nhật quan trọng: Waldek Mastykarz đã đăng một workaround ở đây: http://blog.mastykarz.nl/inconvenient-sharepoint-2010-content-query-web-part-anonymous-access/.
</Cập Nhật cuối>
Tuần này, đội của tôi và tôi đã nâng cấp trang web internet công cộng của khách hàng từ MOSS để SP 2010. MOSS trang web sử dụng CQWP ở một vài nơi.
Chúng tôi đã đi qua một thủ tục rất chi tiết để đảm bảo tính chính xác, chất lượng và công cụ tất cả những gì tốt. Mặc dù vậy, chúng tôi chạy vào vấn đề một trong 11 giờ mà chúng tôi đã không mong đợi hoặc phát hiện ra cho đến khi rất muộn. Đặc biệt, CQWP chúng tôi sẽ không hiển thị cho người dùng vô danh. Nó thực hiện tìm kiếm cho các tác giả (những người đã đăng nhập), nhưng nó sẽ không hiển thị các nội dung cho người dùng vô danh.
Chúng tôi đã làm rất nhiều nghiên cứu và đây là những tham số và hành động, chúng tôi đã để cô lập các hành vi:
- CQWP sẽ đưa ra tốt đẹp khi nó đã kéo nội dung từ danh sách tùy chỉnh.
- CQWP sẽ hiển thị nội dung từ thư viện /Pages.
- Nó sẽ không hiển thị nội dung từ /SiteCollectionImages
- Chúng tôi tạo ra một thư viện tài liệu mới và tải lên một vài tài liệu nó. Chúng tôi đã không thêm bất kỳ loại nội dung vào thư viện-điều này là một đơn giản ra khỏi hộp lib doc với tùy biến không có. Hiện có CQWP không thể đọc từ nó.
- Chúng tôi tạo ra một trang mới và thêm vào một CQWP nó bằng cách sử dụng tất cả các giá trị mặc định. nó sẽ không khiến cho vô danh.
- Chúng tôi (một chút vội vàng) thiết lập một SP mới 2010 môi trường, thẳng ra khỏi hộp một lần nữa và nhân rộng các hành vi này.
Điểm mấu chốt, nó xuất hiện rằng CQWP trong SP2010 không thể hiển thị các nội dung cho người dùng ẩn danh khi nguồn dữ liệu là một thư viện tài liệu. Điều này có thể là đúng?
Đây là lỗi mà chúng tôi đã thấy trong các bản ghi:
Tiêu đề phần web: Nội dung truy vấn Web phần 653d91fb-2f83-4e6a-83af-1f39e8939f0a
07/30/2010 12:03:56.90 w3wp.exe (0x0F30) 0x 1540 SharePoint Foundation Web Parts 89a1 cao lỗi trong khi thực hiện một phần web: Hệ thống NullReferenceException.: Đối tượng tham chiếu không được đặt để một thể hiện của một đối tượng. tại Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.SetDocumentIconUrlAndOnClickString(SPWeb web, DataRow hàng, Chuỗi strDefaultItemOpen, Boolean fSetDocIcon, Boolean fSetOnClick, Chuỗi fileRefColumnRef, Chuỗi progIdColumnRef, Chuỗi fsobjTypeColumnRef, Chuỗi permMaskColumnRef) tại Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.PreProcessForDocumentIconAndOnClickAttribute() tại Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.AddContentQueryData() tại Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart.GetXPathNavigator(Chuỗi viewPath) tại Microsoft.SharePoint.WebPartPages.DataFormWebPart…. 653d91fb-2f83-4e6a-83af-1f39e8939f0a
Nó chỉ có vẻ không thể loại CQWP sẽ không làm việc cho người dùng vô danh. Nếu bạn biết bất kỳ chi tiết về việc này, Xin vui lòng gửi bình luận.
</kết thúc>
Theo tôi trên Twitter lúc http://www.twitter.com/pagalvin