You can provide a secure portlet for Oracle SES on any OracleAS Portal page. You can place separate portlets for the search box and search results, and you can display customized results. Oracle SES portlets conform to the Web Services for Remote Portlets (WRSP) specification.
To implement a secure portlet, you must configure both Oracle SES and the OracleAS Portal page. The supported OracleAS Portal Server version is 10.1.4.2.0 with a mandatory one-off patch 7560661.
Oracle SES supports three different portlet types:
Full Portlet: Displays both the search box and the search results in a single portlet. The default name is SESPortlet. Figure 3-4 shows a full Oracle SES portlet.
Search Box Portlet: Displays the search box, source groups, and alternate keywords. The search results are displayed in a separate search results portlet, which must be on the same Portal page. The default name is SearchBox Portlet.
Search Results Portlet: Displays the result list, suggested links, and pagination links for a query entered in a search box portlet. The search results portlet must be on the same Portal page as the search box portlet. The default name is SearchResults Portlet.
Figure 3-5 shows a search box portlet and a search results portlet. They automatically coordinate their interactions, so they are always synchronized.
On the Oracle SES (provider) side, you must edit the XML configuration file and restart the Oracle SES middle tier so that the changes take effect.
If you are supporting a secure portlet for the first time, follow this procedure:
Customizing the Portlet Configuration File
You can optionally make these changes at any time:
To implement your changes, follow this procedure:
Restarting the Oracle SES Middle Tier
The Oracle SES portlet configuration file is portlet.xml
. It is located in the following directory:
ORACLE_HOME
/search/webapp/search_portlet/search_portlet_war/WEB-INF
Note:
Only the Oracle SES administrator should edit theportlet.xml
file. Changes to portlet.xml
are global to the Oracle SES instance. Changes take effect when you restart the Oracle SES.The current version of portlet.xml
supports all the functionality provided in Oracle SES 11g for secure portlets.
To configure a new default portlet.xml file
Create a copy of the file search_portlet.ear
, which is located in ORACLE_HOME
/search/webapp/
. To do this, first create a folder called tempPortlet
within the webapp
directory, and then save a copy of the search_portlet.ear
file in the tempPortlet
folder.
Navigate to the tempPortlet
folder.
Edit the portlet.xml
file. To do this, from the tempPortlet
folder, first expand the search_portlet.ear
file, and then expand the search_portlet_war.war
file within this.
The portlet.xml
file is located inside WEB-INF/
in the directory where you expanded search_portlet_war.war
. For example, its path is ORACLE_HOME
/search/webapp/tempPortlet/search_portlet/search_portlet_war/WEB-INF/portlet.xml
.
Open portlet.xml
in an XML or text editor.
Set the initialization parameters described in Table 3-4 as desired.
Repackage the search_portlet_war.war
. Use the command
jar cvf search_portlet_war.war images/jsp/WEB-INF
Repackage search_portlet.ear
. Use the command
jar cvfM search_portlet.ear search_portlet_war.war META-INF/
Create a backup of the original search_portlet.ear
file in ORACLE_HOME
/search/webapp/
.
Copy search_portlet.ear
from tempPortlet
to ORACLE_HOME
/search/webapp/
.
Redeploy the search_portlet.ear
to the Oracle WebLogic Server using the Web console located at http://<hostname>:<portNumber>/console
.
Restart the Oracle SES midtier, as described in "Restarting the Oracle SES Middle Tier".
You can customize some portlet preferences from the Edit Defaults page and the Edit page in the Portal user interface. See "Using the Portal User Interface to Change Preferences".
Table 3-4 Oracle SES Portlet Initialization Parameters
Parameter | Description |
---|---|
|
Set to |
|
Set this value to one of the keys that is configured as a federated trusted entity to enable secure search. |
|
Set this value to be the same as the password of the configured federated trusted entity to enable secure search. Note: Set up federated trusted entities on the Global Settings - Federation Trusted Entities page in Oracle SES. Enter an entity name and password, then click Add. The entry is added to the Trusted Entities table. |
|
When configuring a second instance of a portlet type, set to one of the following values:
|
|
Controls the use of source groups:
|
|
Set to |
navSize |
Specifies the number of additional page number links to display on either side of the current page in the pagination links. (Default 3) |
|
Controls the height of the portlet:
|
|
Specifies an image to use for the Search button. (Optional) Set to one of the following:
Add any image files to the /images/custom portlet deployment directory. No other locations are supported. |
|
Specifies the width of the search input text box.
|
|
Controls access to secure data sources:
|
|
Controls authentication of end users. You can set the following values:
|
|
Controls use of advanced result configuration settings:
Advanced result configuration is enabled in the Oracle SES Administration GUI on the Configure Search Result List page. |
wiringKey |
Connects portlets using a shared key. (Optional) Enter a unique key string value, such as A key is recommended when multiple pairs of connected portlets share the same Portal page. |
Oracle SES supports result list customizations for portals and for other search interfaces. You can choose the attributes returned by a query and format the results using a custom XSLT style sheet.
To support result list customizations in a secure portlet:
If you have not done so, customize the results list as described in "Customizing the Appearance of Search Results".
Open portlet.xml
in an XML or text editor.
Set the useDefaultAppHtml
parameter to true
for the portlets that support result list customizations. This is either SESPortlet or both the SearchBox and SearchResults portlets.
Restart the middle tier as described in "Restarting the Oracle SES Middle Tier".
Under some circumstances, you might want to have different initialization parameter settings for different instances of the same portlet type. For example, you might want to have two SearchBox portlets on different Portal pages, but with different heights. Or you might want to have multiple instances of SESPortlet, with some instances displaying default results and other instances showing Advanced Result List Customization results.
To change the configuration of a second instance of a portlet type:
Open portlet.xml
in an XML or text editor.
Copy the <portlet>
element for the existing instance of the portlet type.
Enter new values for <portlet-name>
and <display-name>
.
Make whatever other changes you want to the initialization parameter settings, then save the file.
Restart the Oracle SES midtier, as described in "Restarting the Oracle SES Middle Tier".
The two portlet definitions appear as distinct choices when adding portlets to the Portal page region.
Restart the Oracle SES middle tier to enable the changes made to portlet.xml
.
On Linux and UNIX, from the ORACLE_HOME/bin
directory, enter the following command:
./searchctl restart
On Windows, enter the following command:
searchctl restart
You can now register the portal with OracleAS Portal.
The OracleAS Portal administrator must register a secure portlet. The administrator and end users can optionally set preferences.
As an OracleAS administrator, you must register Oracle SES as a Portlet provider and create a Portlet page that contains a secure portlet.
To register Oracle SES as a portlet provider:
Log on to OracleAS Portal.
Click the Navigator link.
Click the Providers tab.
Click the Registered Providers link.
Click the Register New… Provider link.
Enter a name for the provider and select WSRP
from the Implementation Style box. Click Next.
Enter the Oracle SES portlet WSDL URL in the text box, then click Next.
http://HostName:PortNumber/sesPortlet/portlets/WSRPBaseService?WSDL
Where HostName
and PortNumber
are the host name and port number of the Oracle SES instance.
Click Finish.
Click OK to complete registration of portlet provider.
The following error can occur when registering the portlet:
HTTP transport error : java.lang.NullPointerException
If you encounter this error:
Confirm that the portlet WSDL URL that you entered during registration is correct.
If Oracle Portal 10.1.4 uses Oracle Database 10g Release 2, then install Portal patch 5009567.
To add a secure portlet to a Portlet page:
Click the Page groups tab in OracleAS Portal.
Click the Create New… Page Group link.
Enter a display name. Click Create.
Click Add Portlet.
Click Portlet Staging Area.
Click the link that shows the provider name, as defined in the preceding procedure.
Click one of the following links:
SES Portlet: Displays the full portlet which contains both the search box and search results.
SearchBox Portlet: Displays the search box, source groups, and alternate keywords.
SearchResults Portlet: Displays the result list, suggested links, and pagination links.
Click OK.
The portlet is now added to the portal page.
You can set default values for certain user preferences by using the Edit Defaults page. These settings affect end users who have not yet personalized their portlet; they do not overwrite the user settings for portlets that have already been personalized.
These are among the configurable preferences for a secure portlet:
Number of search matches displayed in a portlet view
Displaying or hiding the date and author
Listing source groups in a drop-down list or in tabbed links
Opening links in a new window
Displaying a gray line between search results
To change the default preferences for a secure portlet:
Log on to OracleAS Portal as the administrator.
Edit the Portal page containing the Oracle SES portlet as desired.
Click the pencil icon in the upper left corner to display the Edit Defaults page.
Make the desired changes.
Click OK to save the changes.
End users can also set default values for certain user preferences from the Edit page. These preferences depend on the display mode of the portlet and certain initialization parameter settings in the portlet.xml
file.
Note:
In previous releases, the base path of Oracle SES was referred to asORACLE_HOME
. In Oracle SES release 11g, the base path is referred to as ORACLE_BASE
. This represents the Software Location that you specify at the time of installing Oracle SES.
ORACLE_HOME
now refers to the path ORACLE_BASE
/seshome
.
For more information, see "Conventions".