Just got of the phone with IBM Support (thanks Rehan), and IBM were able to pinpoint an issue with SMSDOM interfering with Domino Quickr. Basically SMSDOM has a feature to "enhance" scanning performance. When enabled, Secure Scanning Optimization (SSO) will add a field called "X-SSOTag" to any and all documents on the server. Quickr really doesn't like this tag and will have issues rendering a web page with any attachments stored in it.

This feature is enabled/disabled here:
Image:Symantec Mail Security for Domino (SMSDOM) and Quickr - Title Missing from h_StdPageRead error

If you see an error about "Title Missing from h_StdPageRead" then this is lightly your issue.

To fix it, disable SSO then remove the "X-SSOTag" from all of your Quickr documents via the code below. Use the code at your own risk.

Incidentally, I don't like SMSDOM SSO as it is not cluster or replica friendly so I turn it off on every server anyway.


Sub Initialize
       Dim s As New NotesSession
       
       Dim dbdir As New NotesDbDirectory("YourQuickrServerNameHere")
       Dim db As NotesDatabase
       Dim view As NotesView
       Dim doc As NotesDocument
       
       Set db = dbdir.GetFirstDatabase(DATABASE)
       
       Do Until db Is Nothing
               If db.Open("","")        Then
                       If Ucase( db.FileName) = "MAIN.NSF" Then
                               Set view = db.GetView("System\Forms")
                               Set doc = view.GetFirstDocument
                               Do Until doc Is Nothing
                                                        If doc.HasItem("X-SSOTag") Then
                                                            Call doc.RemoveItem("X-SSOTag")
                                                             Call doc.Save( False, False )
                                                        End If
                                       Set doc = view.GetNextDocument(doc)
                               Loop
                               
                               Set view = db.GetView("System\Docs By Folder")
                               If Not(view Is Nothing) Then
                                       Set doc = view.GetFirstDocument
                                       Do Until doc Is Nothing
                                                  If doc.HasItem("X-SSOTag") Then
                                                            Call doc.RemoveItem("X-SSOTag")
                                                             Call doc.Save( False, False )
                                                        End If
                                               Set doc = view.GetNextDocument(doc)
                                       Loop
                               End If
                       End If
               End If
               
               
               Set db = dbdir.GetNextDatabase
       Loop
       
End Sub
Darren Duke   |   June 4 2009 02:55:17 PM   |    quickr  smsdom    |  
  |   Next Document   |   Previous Document

Discussion for this entry is now closed.

Comments (2)

Gravatar Image
1 - paul    http://no site    06/05/2009 7:06:13 AM

Your code will modify all documents! Even if the original document does not have this field it will be notified. If you just save a document without modifying it, it will be replicated next time... so your solution will create more problems.

Gravatar Image
2 - Darren Duke    http://blog.darrenduke.net    06/05/2009 7:16:59 AM

@1, that's why there is a YMMV ;)

Anyway I added a few lines to check the field actually exists. If anyone is wondering why I didn't use @DeleteField, it appears the "-" on the field name really causes the Domino Designer to bork.