Troubleshooting: Ruby Store Homepage returns 404 Error when Spanish is default language

Problem

When your environment uses the Esite Index model and the Emerald Catalog data includes Spanish translations without corresponding SEOURL entries, configuring the Ruby store with Spanish as the sole and default language causes the homepage return a 404 error.

Solution

To resolve this issue, you must insert the necessary Spanish-language data into the following database tables:
  • STOREENTDS
  • SEOPAGEDEFDESC
  • SEOURLKEYWORD
For Example:

INSERT INTO STOREENTDS (LANGUAGE_ID, STOREENT_ID, DISPLAYNAME, STADDRESS_ID_LOC, DESCRIPTION, STADDRESS_ID_CONT, OPTCOUNTER) 
VALUES(-5, 41, 'Ruby', 17502, 'Commerce Model Store entity', 17501, 1);
INSERT INTO SEOPAGEDEFDESC (SEOPAGEDEF_ID, LANGUAGE_ID, TITLE, META_DESC, META_KEYWORD, IMAGE_ALT_DESC, LASTUPDATE, CREATEDTIME, FIELD1, FIELD2, FIELD3, OPTCOUNTER) 
VALUES(12001, -5, 'Welcome to <seo: StoreName/>', 'Shop <seo: StoreName/> online. <seo: StoreDescription/>', '<seo: StoreName/> <seo: StoreDescription/>', 'Image for <seo: StoreName/> home page', '2010-01-01 00:00:00.000000', '2010-01-01 00:00:00.000000', NULL, NULL, NULL, 1);
INSERT INTO SEOURLKEYWORD (SEOURLKEYWORD_ID, SEOURL_ID, LANGUAGE_ID, STOREENT_ID, URLKEYWORD, MOBILEURLKEYWORD, STATUS, OPTCOUNTER) 
VALUES(63601, 17001, -5, 12501, 'home-es', NULL, 1, 1);
Next Step:
  • Build the full index.
  • Access the Ruby store homepage using: https://<hostname:<port>/ruby/home-es
Note: If you want to retain Ruby default homepage without adding a new entry, use an update instead of an insert:
UPDATE SEOURLKEYWORD SET LANGUAGE_ID = -5 WHERE SEOURL_ID = 17001;
You can then access Ruby home page at: https://<hostname:<port>/ruby