How to enable new language In IBM WCS

CREATE BOOTSTRAP FILES

1. Go to <WCDE_installdir>/schema/xml/

2. Create a bootstrap file that is called wcs.bootstrap_nl_NL.xml and add the following code.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE import SYSTEM "wcs.dtd" [
<!ENTITY bootbase SYSTEM "./wcs.bootstrap_ nl_NL _base.xml"> 
]>
<import>
&bootbase; 
</import>

Save & close the file.

3. Create wcs.bootstrap_nl_NL_base.xml. Search for wcs.bootstrap_tr_TR_base.xml and Copy all the data from wcs.bootstrap_tr_TR_base.xml to newly created wcs.bootstrap_nl_NL_base.xml and save it.

4. Add below two lines on the top of the newly created wcs.bootstrap_ nl_NL _base.xml file

<language language_id="&nl_NL;" localename="nl_NL" language="nl" country="NL" encoding="UTF-8" mimecharset="iso-8859-15" /> 
<langpair storeent_id="-1" language_id="&nl_NL;" language_id_alt="&en_US;" sequence="100" />

5. Create wcs.bootstrap_multi_nl_NL_base.xml. Search for wcs.bootstrap_multi_en_US_base.xml and copy all the data from wcs.bootstrap_multi_en_US_base.xml to wcs.bootstrap_multi_nl_NL_base.xml and save the file.

6. Added below lines on the top of the file wcs.bootstrap_multi_nl_NL_base.xml

<languageds language_id="-1" description="Dutch" language_id_desc="-28" />
<languageds language_id="-2" description="Dutch" language_id_desc="-28" />
<languageds language_id="-3" description="Dutch" language_id_desc="-28" />
<languageds language_id="-4" description="Dutch" language_id_desc="-28" />
<languageds language_id="-5" description="Dutch" language_id_desc="-28" />
<languageds language_id="-6" description="Dutch" language_id_desc="-28" />
<languageds language_id="-7" description="Dutch" language_id_desc="-28" />
<languageds language_id="-8" description="Dutch" language_id_desc="-28" />
<languageds language_id="-9" description="Dutch" language_id_desc="-28" />
<languageds language_id="-10" description="Dutch" language_id_desc="-28" />
<languageds language_id="-20" description="Dutch" language_id_desc="-28" />
<languageds language_id="-21" description="Dutch" language_id_desc="-28" />
<languageds language_id="-22" description="Dutch" language_id_desc="-28" />
<languageds language_id="-23" description="Dutch" language_id_desc="-28" />
<languageds language_id="-24" description="Dutch" language_id_desc="-28" />
<languageds language_id="-26" description="Dutch" language_id_desc="-28" />
<languageds language_id="-13" description="Dutch" language_id_desc="-28" />
<languageds language_id="-28" description="Dutch" language_id_desc="-28" />

Save and close.

7. Open the wcs.dtd file. Find the line:

<!ENTITY en_US "-1">
Add below line
<!ENTITY nl_NL "-28">

8. Create the remaining multi-language bootstrap files for the Dutch language.

  • Locate the file wcs.bootstrap_multi_en_US.xml
  • Make a copy of the file and rename it to wcs.bootstrap_multi_nl_NL.xml.
  • Open the file that is created in the previous step for editing; replace all references of en_US to nl_NL.
  • Save the file.
  • Locate all the remaining files that start with wcs.bootstrap_multi_en_US_*.xml (excluding wcs.bootstrap_multi_en_US_base.xml, as this file was already created and updated in preceding steps):
  • wcs.bootstrap_multi_en_US_contract.xml
  • wcs.bootstrap_multi_en_US_epromotion.xml
  • wcs.bootstrap_multi_en_US_member.xml
  • wcs.bootstrap_multi_en_US_order.xml
  • wcs.bootstrap_multi_en_US_return.xml
  • wcs.bootstrap_multi_en_US_runtime.xml
  • wcs.bootstrap_multi_en_US_tickler.xml
  • Make a copy of each file found in the previous step and rename it from wcs.bootstrap_multi_en_US_*.xml to wcs.bootstrap_multi_nl_NL_*.xml.
  • Open each of the files that are created in the previous step for editing; replace all references of &en_US; to &nl_NL;(value used in language_id).
  • Save all the files.

Run MassLoad

9. Run massload

massload 
<WC_installdir>\schema\xml\wcs.bootstrap_nl_NL.xml
massload 
<WC_installdir>\schema\xml\wcs.bootstrap_multi_nl_NL.xml

10. Add -28 language_id to hub and catalog asset store (depending on what identifiers you have in your local update in below query)

insert 
into storelang (language_id,storeent_id)
select 
-28,storeent_id from storeent 
where identifier in ('LOKESH-GUPTA-CAS',' LOKESH-GUPTAExtendedSitesHub','Extended Sites 
Hub');

11. Make sure nl_NL folder exist (and has schema.xml in there) at following locations in toolkit

  • <WC_installdir>\components\foundation\subcomponents\search\solr\home\template\CatalogEntry\conf\locale
  • <WC_installdir>\components\foundation\subcomponents\search\solr\home\template\CatalogEntry\unstructured\conf\locale
  • <WC_installdir>\components\foundation\subcomponents\search\solr\home\template\CatalogGroup\conf\locale

Run SetupSearchIndex

12. Run SetupSearchIndex command     

C:\IBM\WCDE_ENT70\components\foundation\subcomponents\search\bin\setupSearchIndex 
-masterCatalogId 10001

   If it fails then add ” -setupWebContent false” to above command

13. Check if nl_NL core is created in solr (for CatalogEntry,Unstructured and CatalogGroup)

C:\IBM\WCDE_ENT70\search\solr\home\MC_10001

14. Start Com/Solr server and hit this url, it should return empty index but not error out

https://localhost/solr/MC_10001_CatalogEntry_nl_NL/select?q=*

  • If it return error then Check C:\IBM\WCDE_ENT70\search\solr\home\solr.xml it should not contains repeated entries for MC_10001_CatalogGroup_nl_NL, MC_10001_CatalogEntry_nl_NL & MC_10001_CatalogEntry_Unstructured_nl_NL. And for other locale too.

15. Add -28 to eSite (this query adds to eSite, you can add more eSites in your local)

insert into storelang (language_id,storeent_id) select -28,storeent_id from storeent where  identifier in ('LOKESH-GUPTA',' LOKESH-GUPTACorp',' LOKESH-GUPTACorp'); 

     

Leave a Reply