DateUtils#parseDate uses default locale instead of US (or trying both default locale and Locale.English) --------------------------------------------------------------------------------------------------------
Key: LANG-799 URL: https://issues.apache.org/jira/browse/LANG-799 Project: Commons Lang Issue Type: Bug Components: lang.time.* Affects Versions: 3.1 Reporter: Oliver Kopp Priority: Minor Similar issue as https://issues.apache.org/jira/browse/HTTPCLIENT-471 Following line throws an ParseException on a German system: d = DateUtils.parseDate("Wed, 09 Apr 2008 23:55:38 GMT", new String[] {"EEE, dd MMM yyyy HH:mm:ss zzz"}); Reason: parseDate internally calls SimpleDateFormat without providing a locale. This causes "MMM" to be interpreted using the system locale. If the system is German, the date is trying to be interpreted as German date. I see following solutions: A) Always instantiate SimpleDateFormat with Locale.ENGLISH B) Make two instances of SimpleDateFormat. One without providing a locale and one with Locale.ENGLISH. Try two parsings C) Make as many SimpleDateFormat instances as locales are availble iterate over all instances at the parsing attempts. D) provide an additional (optional) parameter to parseDate for providing a Locale I would prefer B) as this seems the best trade-off between internationalization and local usage. What do you think? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira