11. Add xtaf dictionaries to installation package

Note 1: I will use Lotus Notes 8.5.2 in that section / example.

Beginning with Lotus Notes 8.5.1 there is now a new spell check engine which used the (so called) xtaf dictionaries (you can read more about it here). These dictionaries are used by the standard client (not the basic one) and the build in components like sametime. In this section I will describe how to add these dictionaries into the Lotus Notes installation kit.

11a.) Copy the elements from C:\MyNotesCustomization\step10 to C:\MyNotesCustomization\step11

11b.) get the NotesCustomizationKit_1_0.zip file from the Utility folder from the Notes Admin Installation package and extract the content to: C:\MyNotesCustomization [if not already done during the preparations]

11c.) Download the xtaf dictionaries from the IBM Passport website (the file is called Notes_XTAFDictionaries_852_WinLnx_Ml.zip) and extract the content to: C:\MyNotesCustomization\XTAF_Dics

11d.) Copy the dictionary (the single file updateSite_<lang>.zip) you wish to add from C:\MyNotesCustomization\XTAF_Dics\Apps\Dictionaries\XTAF to C:\MyNotesCustomization\deploy. For this example we will copy the updateSite_nl.zip which holds the dutch language.

11e.) Rename the updateSite_nl.zip to updateSite.zip

11f.) Open the updateSite.zip with WinRar (or any other appropriated software) and navigate to the features\com.ibm.langware.v5.dic.nl_NL.feature_<version>.jar JAR file and extract that file to C:\MyNotesCustomization\temp.

11g.) Navigate now to C:\MyNotesCustomization\temp (do NOT close WinRar) and change the filename from com.ibm.langware.v5.dic.nl_NL.feature_<version>.jar to com.ibm.langware.v5.dic.nl_NL.feature_<version>.zip

11h.) Open com.ibm.langware.v5.dic.nl_NL.feature_<version>.zip with WinRar and extract the feature.xml to C:\MyNotesCustomization\temp.

11i.) Open the feature.xml (do NOT close WinRar) with Notepad (I prefer NotePad+) and change the featurecolocation-affinity="com.ibm.rcp.site.anchor.user.feature" to feature colocation-affinity="com.ibm.rcp.platform.feature" and save the file. You can read more about that here (technote 1440976).

11j.) now open the WinRar windows where you edit the com.ibm.langware.v5.dic.nl_NL.feature_<version>.zip and replace the already existing feature.xml with the one which was changed by you. After that delete the META-INF folder (it holds the jar signature) from the ZIP file. After that step close this WinRar windows now and save the com.ibm.langware.v5.dic.nl_NL.feature_<version>.zip when asked.

11k.) now rename com.ibm.langware.v5.dic.nl_NL.feature_<version>.zip to com.ibm.langware.v5.dic.nl_NL.feature_<version>.jar

11l.) Because of the reason that you changed the JAR file you need to sign the JAR now with your certificate (see "Preparations: Create a signer certificate"), otherwise the Notes installer will not accept the so changed file, because the signature is now damaged (a security feature from JAR files). To sign the JAR file run now the following command:

"C:\Program Files\Java\jdk\bin\jarsigner" -verbose -keystore C:\MyNotesCustomization\mykeystore -storepass password -keypass mypassword C:\MyNotesCustomization\temp\*.jar "my self signed cert"

Please note: Your keystore name, the certificate and the password might be another one, so you need to adjust the line above so that it fits your needs.

11m.) After the JAR file is signed now, open the WinRar windows which has the updateSite.zip open and replace the features\com.ibm.langware.v5.dic.nl_NL.feature_<version>.jar with your changed one. Close this WinRar windows and save the file if asked. Delete now all files in C:\MyNotesCustomization\temp.

11n.) Open C:\MyNotesCustomization\deploy\updateSite.zip and extract the install.xml to C:\MyNotesCustomization\deploy\deploy

11o.) now we can try a dry run (nothing is changed in that step). To perform the try run open a comandprompt (cmd) and navigate to C:\MyNotesCustomization and use the following command line:

addtoKit -d -n C:\MyNotesCustomization\deploy C:\MyNotesCustomization\step11

You will then see some debug outputs and can control if there are any errors.

11p.) If you are happy with the output from the last step go ahead and add the dictionary to the kit via:

addtoKit -d C:\MyNotesCustomization\deploy C:\MyNotesCustomization\step11

11q.) If you like you can now check if the dictionary was added successfully to the kit. Open the deploy\install.xml file and check if you can find a similar section like:

<installfeature mergeaction="add" default="true" description="Platform.XPD.Dictionary feature. Select this feature to install spell check dictionary." id="Platform.XPD.Dictionary.de" required="true" show="false" version="7.1.1.201006221804">
<requirements>
<feature id="com.ibm.langware.v5.dic.de_DE_Reform.feature" download-size="809" match="perfect" size="1170" url="jar:${installer.root}/updateSite.zip!/" version="7.1.1.201006221804"/>
<feature id="com.ibm.langware.v5.dic.de_CH.feature" download-size="769" match="perfect" size="1109" url="jar:${installer.root}/updateSite.zip!/" version="7.1.1.201006221804"/>
</requirements>
</installfeature>

11r.) If you wish to add other xtaf dictionary repead step 11d ... 11q

 

Note 1:

See also Technote 1440976 (Customizing Lotus Notes multi-user install kit for correct XTAF dictionary installation) for more informations.

Note 2:

If you didn´t sign the changed JAR file the installer will fail with the error message: "failed to install. The reason provided is CWPST1012E: Plugin has been corrupted" and some client components will then not work correctly!