Configure the External Search Results portlet
Configure a portlet that retrieves and displays search results from third-party search engines, then add the External Search Results portlet to the Search Center. The External Search Results is a specialized portlet that administrators can add to Portal Search. When we add that portlet to Portal Search, the results of a search initiated from the Search page include results from third-party external search engines. We can add more than one copy of the External Search Results portlet to the Portal Search page. We can also configure each of these portlets to display a specific number of search results.
- We must be logged in as Administrator to add an External Search Results portlet to the Search Center.
- The External Search Results portlet can be added only to the Search Center on the Portal Search page. Does not function anywhere else.
To add the External Search Results portlet to the Portal Search page and configure it:
- Optional: Add the portlet to the Search Center.
Add the portlet only if the External Search Results portlet was removed from the Search Center.
- Click...
Administration | Portal User Interface | Manage Pages | Content Root | Search | Search Center | Edit Page Layout | Add Portlets
- Select the External Search Results portlet by clicking the check box.
- Click OK to add the portlet to the page.
- Click Done.
- Go to the Search Center page.
- Configure the External Search Results portlet:
Users can now use the External Search Results portlet.
- Click the Administration menu icon in the toolbar.
- Click Portlet Management > Portlets.
- In the list of portlets, locate External Search Results, and click the Configure icon next to the portlet name.
- Edit the value of the searchEngineUrl parameter. This value represents the URL of the third-party search engine to be queried. The value of the searchEngineUrl parameter returns a feed of search results for the specified search terms. The feed is in RSS or ATOM syndication format. The string ${searchTerms} must be included in the value. This string is replaced by the actual query during the search. For example:
http://www.ibm.com/developerworks/views/rss/customrssatom.jsp?zone_by=Lotus&search_by=${searchTerms}
- Optional: Edit the value of the parameter searchEngineFullPageUrl. Optional. We can delete it or leave it empty. When we set this parameter, a More link is added to the portlet. It links to the website of the external search engine. The value represents a parameterized form of the URL used to locate the search engine that is queried. The string ${searchTerms} must be included in the parameter value. During the search, the portlet replaces the string by the actual query. For example:
http://www.ibm.com/developerworks/search/searchResults.jsp?searchSite=dW&searchScope=dW&query=${searchTerms}
This URL returns the public HTML page of the search engine.
- Edit the value of the numOfEntries parameter. This parameter determines the maximum number of search results, which are displayed. The default number is 3, but we can enter a different numeric value to increase the maximum.
- Optional: If the external search engine returns search results in a format that is not supported, or if the provided rendering of the search results is not acceptable, an XSLT file can be specified. Edit the value of the externalXsltUrl parameter to supply a URL for such an external XSLT file.
The XSLT does not create an entire HTML document, but an HTML fragment that can be embedded inside a page.
- On the page for editing the preference searchEngineFullPageUrl, click OK.
- On the page for configuring the External Search Results portlet, click OK to save the changes.
- To add external search engines, or modify the existing search engine, modify the proxy configuration of the portlet. All HTTP requests from the portlet to the external search engines are directed through the outbound HTTP connection service, which is included in the portal. The External Search Results portlet includes an application-specific configuration for this service. In a standard portal installation, it allows only connections to the URL of the default external search engine http://www.ibm.com/developerworks/views/rss/*. To change this, modify the proxy-config.xml file bundled with the portlet. To modify the file:
Searches by users are now done by the modified search configuration.
- Go to the file searchCenter.war. It is in the directory PortalServer_root/search/wp.search.portlets/search/portlet/installableApps .
- Edit the file proxy-config.xml. It is in the directory WEB-INF.
- Add an proxy:policy element, or modify the existing one. For more information, read Creating an outbound HTTP connection configuration profile. The current policy element allows connections to the following URL: http://www.ibm.com/developerworks/views/rss/*. We can change the URL attribute to specify another site, for example http://www.ibm.com/products/*. To add several instances of the portlet on a page that show search results from different sources, duplicate the proxy:policy element. Add a policy element for each instance of the portlet, with the URL attribute that matches the search source.
- Repackage the WAR file and update the Search Center web module.
Parent Customize the Search CenterRelated tasks:
Create an outbound HTTP connection configuration profile