Enabling dictionaries
Use administrative commands to enable the dictionaries that you want to use with Search.
Before you begin
When using administrative commands, you
must use the IBM® WebSphere® Application Server wsadmin client.
See Starting the wsadmin
client for details.
Note: Enabling additional dictionaries adds
a performance cost at indexing time and will increase the size of
the index. Additional dictionaries should only be enabled as needed.
See Search language dictionaries for a list of available
language dictionaries.
About this task
Procedure
To enable dictionaries for use with Search, complete
the following steps.
-
Start the wsadmin client from one of the following directories on the system on which you
installed the Deployment Manager:
Linux:
app_server_root\profiles\dm_profile_root\bin
Windows:
where app_server_root is the WebSphere® Application Server installation directory and dm_profile_root is the Deployment Manager profile directory, typically dmgr01.app_server_root/profiles/dm_profile_root/bin
You must start the client from this directory or subsequent commands that you enter do not execute correctly.
- After the wsadmin command environment
has initialized, enter the following command to initialize the Search
environment and start the Search script interpreter:
execfile("searchAdmin.py")
If prompted to specify a service to connect to, type 1 to pick the first node in the list. Most commands can run on any node. If the command writes or reads information to or from a file using a local file path, you must pick the node where the file is stored.When the command is run successfully, the following message displays:Search Administration initialized
-
Check out the Search cell-level configuration file, search-config.xml,
with the following command:
SearchCellConfig.checkOutConfig("working_dir", "cellName")
Where:- working_dir is the temporary directory to which you want to check out the
cell level configuration file. This directory must exist on the server where you are running the
wsadmin client. Use forward slashes to separate directories in the file path,
even if you are using the Microsoft™
Windows™ operating
system.Note: AIX®, and Linux™ only: The directory must grant write permissions or the command does not run successfully.
- cellName is the name of the cell that the Search node belongs to. The command
is case-sensitive. If you do not know the cell name, you can determine it by typing the following
command in the wsadmin command processor:
print AdminControl.getCell()
SearchCellConfig.checkOutConfig("c:/search_temp", "SearchServerNode01Cell")
- working_dir is the temporary directory to which you want to check out the
cell level configuration file. This directory must exist on the server where you are running the
wsadmin client. Use forward slashes to separate directories in the file path,
even if you are using the Microsoft™
Windows™ operating
system.
- To add a specified dictionary to the list of configured
dictionaries, use the following command:
- SearchCellConfig.enableDictionary(String languageCode, String dictionaryPath)
Enables support for the specified LanguageWare® dictionary.
This command accepts two arguments.- languageCode. The language code for the dictionary
that you want to add. This argument is a string value.The language code typically comprises two letters conforming to the ISO standard 639-1:2002 that identifies the primary language of the dictionary. However, there are some codes that additionally define a country or variant, in which case these constituent parts are separated by an underscore. For example, Portuguese has two variants, one for Portugal (pt_PT) and one for Brazil (pt_BR).Note: When using a code that also specifies a country, ensure that you use an underscore to separate the language code and the country code rather than a hyphen; otherwise an error will be generated.
- dictionaryPath. The path to the directory containing the dictionary file. This argument is a string value.
You can also specify the path using a WebSphere® environment variable. In the following example, the "${SEARCH_DICTIONARY_DIR}" value is used to point to the shared Search dictionary directory.SearchCellConfig.enableDictionary("fr","/opt/IBM/Connections/data/shared/search/dictionary")
SearchCellConfig.enableDictionary("fr","${SEARCH_DICTIONARY_DIR}")
- languageCode. The language code for the dictionary
that you want to add. This argument is a string value.
- Check in the updated search-config.xml configuration
file using the following wsadmin client command:
SearchCellConfig.checkInConfig()
- To exit the wsadmin client, type exit at the prompt.
-
Stop the server or servers hosting the Search application, and then restart the Search servers.
The next time the scheduled task runs, persisted seedlists are retained after indexing finishes.