[ https://issues.apache.org/struts/browse/WW-2176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_42365 ]
Jørgen Larsen commented on WW-2176: ----------------------------------- Norwegians are having the same experience. I don't think the above solution will work for <s:selects, so my fix on this problem was to add an helper method in my BaseAction (all other actions extends this action). I.e for doubles I added BaseAction.formatDouble method that uses the default locale. So my <s:select ended up like this: <s:select tooltip="Choose discount" label="Discount" list="contractDiscounts" name="contract.discountFactor" listKey="formatDouble(discountFactor)" listValue="description" emptyOption="false" headerKey="-1" headerValue="-- No discount --"/> This seems to solve my problem regarding doubles and dates "roundtrip" from object to form and back again > In Turkish locale "TR" double values are multiplied by ten on every page load > ----------------------------------------------------------------------------- > > Key: WW-2176 > URL: https://issues.apache.org/struts/browse/WW-2176 > Project: Struts 2 > Issue Type: Bug > Affects Versions: 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7, > 2.0.8, 2.0.9, 2.1.0 > Environment: Windows XP, java 5 and java 6 > Reporter: Ömer Başar > Priority: Blocker > Fix For: 2.0.12 > > Attachments: struts2locale_error.avi > > > The steps to get the error. > 1 - Change your locale to "TR" (Turkish) > 2 - go to edit employee page on showcase application - > http://www.planetstruts.org/struts2-showcase/employee/save.action > 3 - Fill only the salary field with "10" > 4 - Press Save, it shows the required fields and makes the salary field "10.0" > 5 - Press Save again without editing anything, it gives the error for > required fields and makes the salary field "100.0" > 6 - Alter the salary field. Make it "100,0" (change dot with comma) > 7 - press save, here it is not multiplied by 10, but it changes the salary > field value from "100,0" to "100.0" again. > Here is the problem. In Turkish(TR) locale the decimal separator is "comma", > not "dot". So it doesn't convert them according to the TR locale which is the > locale of my browser. When I press save at the 4th and 5th steps it should > write "10,0" using the locale of the browser. > Note : When I change my locale to "EN" everything works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.