RSS
 

Fixed – Problem passing search query from Websphere Portal header to the Onimfind Enterprise Search 9.1 portlet

02 May

Page edited by Ben Shoemate

Issue: Searches from the Websphere portal header do not submit to the Omnifind 9.1 portlet

We had an issue with Websphere portal 6.1.5 and Omnifind enterprise search version 9.1  where searches submitted from search bar in the portal header are not passed to the Omnifind portlet. The page will redirect to the right page but the keyword is not passed to the search portlet and the search is not submitted.

Steps to recreate the problem.

If you follow the steps in the documentation to integrate omnifind with portal (run the install script which creates a portal page and deploys the omnifind portlet and a servlet to encode and submit search keyword) and modify the search bar in the portal theme to send searches to the new page – you will end with a working version of portal where everything works correctly. However, if you modify that page in anyway, it will stop working. The portlet will still submit search typed directly into the portlet but searches typed into the header will not work.

Know ways to break it:

  • Create a new search page, deploy the omnifind portlet to the page and change the search bar to point to this page.
  • Change the layout of the page original page created by the omnifind integration install scripts with the page builder theme.
  • Remove the omnifind portlet from the page and re-add it.
  • Giving the Omnifind portlet (“Search portlet for enterprise search”) a unique name. Note that the portlet it does not have a unique name when installed using the script

Solution

  1. Uninstall the omnifind portlet using the uninstall script provided with omnifind.
  2. Delete any custom pages of copies of the portlet that the script missed.
  3. Reinstall the omnifind portlet using the script provided with omnifind.

Detailed steps:

Step 1: Get the JAR that contains the scripts and files.
Go to the master server where the Omnifind application is running. Find es.wp61.install.jar (note version 7 has its own jar file) and copy it to the portal server and unpack it.

Step 2: with the command prompt (or bash for linux) navigate to the folder you unpacked – es.wp61.install and type the following command (change .bat to .sh for linux) and update the parameters for your server:

wp61_uninstall.bat
 -WPSProfileDir "C:\\IBM\\WebSphere\\wp_profile"
 -WASDir "C:\\IBM\\WebSphere\\AppServer"
 -WASUser wpsadmin
 -WASPassword wpsadmin
 -WPSDir "C:\\IBM\\WebSphere\\PortalServer"
 -WPSUser wpsadmin
 -WPSPassword wpsadmin
 -WPSHost "wps1.base22.com:10040"

Step 3: If it runs successful, log in and check that all omnifind portlets and pages were removed.

Step 4: Run the install script from the command line (just press up to get the command from the unistall and change it to install)

wp61_install.bat
 -WPSProfileDir "C:\\IBM\\WebSphere\\wp_profile"
 -WASDir "C:\\IBM\\WebSphere\\AppServer"
 -WASUser wpsadmin
 -WASPassword wpsadmin
 -WPSDir "C:\\IBM\\WebSphere\\PortalServer"
 -WPSUser wpsadmin
 -WPSPassword wpsadmin
 -WPSHost "wps1.base22.com:10040"

From the omnifind documentation:

Removing OmniFind Enterprise Edition  from WebSphere Portal

 

When you remove OmniFind® Enterprise Edition from WebSphere® Portal, the parameters that you specified for the portlets when you deployed them must be specified again.

To remove OmniFind Enterprise Edition from WebSphere Portal, run the script that is appropriate for operating system and your version of WebSphere Portal or Lotus Quickr for WebSphere Portal:

  • wp61_uninstall.bat or wp61_uninstall.sh
  • wp70_uninstall.bat or wp70_uninstall.sh
  • qkr80_uninstall.bat or qkr80_uninstall.sh

When you start the script, the script stops the WebSphere Portal server. After the OmniFind Enterprise Edition software is removed, the script restarts the WebSphere Portal server.

To remove OmniFind Enterprise Edition from a WebSphere Portal system:

At a command prompt, run the setup script for your operating system and your version of WebSphere Portal. The following example shows parameters on separate lines for readability; you must specify the parameters with the command:

In version 6.1.5

wp61_uninstall.bat
 -WPSProfileDir "C:\\IBM\\WebSphere\\wp_profile"
 -WASDir "C:\\IBM\\WebSphere\\AppServer"
 -WASUser wpsadmin
 -WASPassword wpsadmin
 -WPSDir "C:\\IBM\\WebSphere\\PortalServer"
 -WPSUser wpsadmin
 -WPSPassword wpsadmin
 -WPSHost "wps1.base22.com:10040"

In version 7:

wp70_uninstall.bat \-WPSProfileDir "C:\\IBM\\WebSphere\\wp_profile"
 -WASDir "C:\\IBM\\WebSphere\\AppServer"
 -WASUser wpsbind
 -WASPassword wpsbind
 -WPSDir "C:\\IBM\\WebSphere\\PortalServer"
 -WPSUser wpsadmin
 -WPSPassword wpsadmin
 -WPSHost "portalserver.ibm.com:10040"

Install Omnifind Portal integration – From the documentation

Step 1: Copy the appropriate JAR file from the OmniFind Enterprise Edition server to the WebSphere Portal server, and then use the Java™ JAR command (or the TAR command) to unpack the file.

  1. At a command prompt, run the setup script for your operating system and your version of WebSphere Portal. The following example shows options on separate lines for readability; you must specify the options with the command:
wp70_install.bat
  -WPSProfileDir "C:\\IBM\\WebSphere\\wp_profile"
  -WASDir "C:\\IBM\\WebSphere\\AppServer"
  -WASUser wpsbind \-WASPassword wpsbind
  -WPSDir "C:\\IBM\\WebSphere\\PortalServer"
  -WPSUser wpsadmin
  -WPSPassword wpsadmin
  -WPSHost "portalserver.ibm.com:10040"

Definitions of parameters:

  • WPSProfileDir
    The fully qualified path for the WebSphere Portal profile directory. The default path is /usr/IBM/WebSphere/wp_profile on AIX® systems, /opt/IBM/WebSphere/wp_profile on Linux® or Solaris systems, and C:\IBM\WebSphere\wp_profile on Windows® systems.
  • WASDir The fully qualified path for the WebSphere Application Server root directory; required on AIX, Linux, and Solaris systems only. The default root directory path is/usr/IBM/WebSphere/AppServer on AIX systems and /opt/IBM/WebSphere/AppServer on Linux or Solaris systems.
  • WASUser
    The user name for the WebSphere Application Server administrative user for this installation of WebSphere Portal; required only if global security is enabled in WebSphere Application Server.
  • WASPassword
    The password for the administrative user, if specified.
  • WPSDir
    The fully qualified path for the WebSphere Portal installation directory.
  • WPSUser
    The user name for the WebSphere Portal administrative user.
  • WPSPassword
    The password for the specified WebSphere Portal administrative user.
  • WPSHost
    The WebSphere Portal server host name and port number.
  • InstallClassic
    If you run the wp61_install script, specify this option to install the portlet for classic search collections in addition to the portlet for search collections.
  • IntegrateClassic
    If you run the wp61_install script, and you specify the InstallClassic parameter, specify this parameter if you want to integrate the portlet for classic search collections with the WebSphere Portal Search bar and deploy the portlet for classic search collections as the default search page.

Step 2: Configure the following settings to set up the new portlet or portlets:

  1. Log in to WebSphere Portal with the Portal administrator ID and password.
  2. Click Administration in the lower left corner.
  3. Click Portlet Management in the navigation area to the left, and then click Portlets.
  4. Change the Search by option to Title contains.
  5. Enter the appropriate portlet title in the Search field and then click the Search button:
    • If you deployed the portlet for search collections, enter Search portlet for search collections. (actually its called: “Search portlet for enterprise search” – note that it has no unique name, do not give it one)
    • If you deployed the portlet for classic search collections, enter Search portlet for classic search collections.
  6. After new icons are displayed to the right, click the wrench icon to configure the portlet.
  7. In the list of portlet parameters, modify the following parameters:
    • hostname
      Specify the fully qualified host name of the OmniFind Enterprise Edition search server.
    • port
      Specify the port number used by the OmniFind Enterprise Edition search server. The default value is 8394.
    • username
      The user name for the OmniFind Enterprise Edition administrative user; required only if the embedded application server login is enabled in OmniFind Enterprise Edition.
    • password
      The password for the administrative user, if specified.
    • protocol
      Specify the protocol used for communication between WebSphere Portal and the search server. The default is HTTP. If you use SSL, specify HTTPS.
    • trustStore
      If you use SSL, specify the fully qualified path (with the file name) for the SSL certificate store.
    • trustPassword
      If you use SSL, specify the password for the specified trustStore file.
    • ssoCookieName
      Specify the name of the cookie that contains the single sign-on (SSO) token string. The default value is LtpaToken.
    • proxyHost
      If a proxy server is required to access the search server, specify the fully qualified host name of a proxy server.
    • proxyPort
      If you specified a proxy server, specify the port number for the proxy server.
    • proxyUser
      If the proxy server requires basic authentication, specify a user name to use to log in to the proxy server.
    • proxyPassword
      If you specified a user name for the proxy server, specify the corresponding password.
  8. Click OK to save your changes.
    Â