Affects Version/s: 6.2.0 CE RC2, 6.2.0 CE RC4, 6.2.0 CE RC5
Component/s: Content Display Widgets > Language widget
Environment:Tomcat 7.0 + MySQL 5. Portal master GIT ID: 6c9e30bc650ce51866913752cdd24b29e2832ea8.
When user edits a page and gives a localized Friendly URL while leaving the default language Friendly URL blank, returning the the Edit Page throws exceptions and gives a blank menu.
Here are the steps to reproduce:
1. Navigate to localhost:8080
2. Click Edit Page Icon
3. Delete prefilled trailing Friendly URL (ie: /home)
4. Create localized friendly URL (ie: /web/guest/german)
5. Click on default flag (US Flag)
6. Delete prefilled trailing Friendly URL (ie: /german)
7. Assert localized friendly URL still exists
9. Click Edit Page Icon
10. Assert Blank Menu with non working tab buttons
11. Assert exceptions
Exceptions thrown and Edit Page becomes blank
Navigating to Localized Friendly URL still works afterward.
After a migration of a Liferay 6.1GA3 based server to 6.2RC2 with default language German, language specific friendlyURL entries in the database were converted to US english only versions. But because the default language after the migration was still German, any changes to a page of our default site resulted in an uncompleted save operation while saving the changes of the page to the database.
The save operation crashes because it cannot find a friendly-URL for the German language. This results as a side effect in an emptry "friendlyURL" field in the layout (i.e. page) table in the database. And then everytime you try to open the change dialogue of that page, you get a truncated dialogue because the rendering routine crashes as it can't handle empty friendlyURL field values in the associated layout table entries. Afterwards user cannot change any attribute of the corresponding page. And this bug will cascade to all pages which user try to change.
We fixed this manually in our server by changing the language setting of the friendlyURL-entries in the language specific table to German language and filling in the right friendlyURL of corrupted entries in the layout table.