XWEB: How to Perform Full-Text Searching Using WebDAV

Article translations Article translations
Article ID: 259849 - View products that this article applies to.
This article was previously published under Q259849
This article has been archived. It is offered "as is" and will no longer be updated.
Expand all | Collapse all

On This Page

SUMMARY

To improve search performance on Microsoft Exchange 2000 Server, you can apply full-text searching to a mailbox store or public folder store. This article explains how to create full-text indexing on a public folder store and to use Web Distributed Authoring Version (WebDAV) to perform the full-text searching using CONTAINS or FREETEXT in a WHERE clause of a Structured Query Language (SQL) query.

MORE INFORMATION

Steps to Create Full-Text Index

  1. In Exchange System Manager, locate the Public Folder Store.
  2. Right-click Public Folder Store, point to Create Full-Text Index, accept the default catalog location, and then click OK.
  3. Right-click the Public Folder Store again, click Start Full Population, and then click Yes to continue.
  4. Look at the Full-Text Indexing subcontainer of the public store, watch the status of the index build, and wait until the index build is finished.
  5. Right click Public Folder Store, click Properties, click the Full Test Indexing tab, and then click to check the This index is currently available for searching by clients check box.
Stores with full-text searching applied have the following properties indexed:

Collapse this tableExpand this table
MAPI Propertiesurn:schemas:httpmail Properties
PR_SUBJECT, PR_SUBJECT_Wurn:schemas:httpmail:subject
PR_BODY, PR_BODY_Wurn:schemas:httpmail:textdescription
PR_SENDER_NAME, PR_SENDER_NAME_Wurn:schemas:httpmail:sendername
PR_SENT_REPRESENTING_NAME, PR_SENT_REPRESENTING_NAME_Wurn:schemas:httpmail:fromname
PR_DISPLAY_TO, PR_DISPLAY_TO_Wurn:schemas:httpmail:displayto
PR_DISPLAY_CC, PR_DISPLAY_CC_Wurn:schemas:httpmail:displaycc
PR_DISPLAY_BCC, PR_DISPLAY_BCC_Wurn:schemas:httpmail:displaybcc
PR_SENDER_EMAIL_ADDRESS, PR_SENDER_EMAIL_ADDRESS_WNot Applicable


Steps to Test the Sample Code

  1. Create a public folder named "MyPub" under the Public Folders container; this is the folder that you want to search.
  2. Post some messages that may or may not contain the word "preliminary" into MyPub.
  3. Create another public folder named "AspApps" under the Public Folders container. Paste the following code to Notepad, modify the code to reflect your server name, and then save it to the AspApps folder as FullTextIndexing.asp.
    <%@ LANGUAGE=VBScript %>
    <HTML>
    <HEAD>
    <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
    <TITLE>Simple SEARCH</TITLE>
    </HEAD>
    <BODY> 
    <%
    
       Response.Write("----begin----" + "<br>")
       set doc = createobject("microsoft.xmldom")
       set docback = createobject("microsoft.xmldom")
       dim strURL
       strURL = "http://servername/public/MyPub/"
       set pi = doc.createProcessingInstruction("xml","version=""1.0""")
       doc.appendChild pi
    
       set node = doc.createNode(1,"searchrequest","DAV:")
       set doc.documentElement = node
    
       set node2 = doc.createNode(1,"sql","DAV:")
       node.appendChild node2
       set query = doc.createTextNode("select ""DAV:displayname"" from """ & strURL & """ WHERE CONTAINS('""preliminary""')")
       
       node2.appendChild query
    
       set req = createobject("microsoft.xmlhttp")
       req.open "SEARCH", strURL, false, "MangoDomain\User1", "user1"
       req.setrequestheader "Translate", "f"
       req.setrequestheader "Content-Type", "text/xml"
       req.setrequestheader "Depth", "0"
       req.send doc
    
       set docback = req.responseXML
    
       Dim objNodeList
    
       'Typically the DAV namespace get the 'a' prefix.
       'If you are specifying multiple properties in a search,
       'examine the returned XML beforehand to determine prefixes
       'for your code.
    
       Set objNodeList = docback.getElementsByTagName("a:displayname")
       For i = 0 To (objNodeList.length -1)
         Set objNode = objNodeList.nextNode
         Response.Write(objNode.Text & "<hr>")
       Next
    
       Response.Write("----end----" + "<br>")
    
    	%>
    </BODY>
    </HTML>
    					

  4. Run the .asp from Internet Explorer using the following URL format:
    http://servername/public/aspapps/FullTextIndexing.asp
  5. A list of all the display names of the messages that meet the search criteria is returned.

Properties

Article ID: 259849 - Last Review: October 20, 2013 - Revision: 1.4
APPLIES TO
  • Microsoft Exchange 2000 Server Standard Edition
Keywords: 
kbnosurvey kbarchive kbhowto KB259849

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com