I thought about this and I thought this makes sense, because there are duplicated data in Harmony now, but I haven't got enough time to investigate, my gut feeling on the possible issues include:
1. ICU is not designed to be used in bootclasspath, so that we met several issues related to this, for example, it put the Character upper/lower case mapping in several data files, which needs to be loaded by ClassLoader.getResourceAsStream(), while when Harmony VM need to use these data, the URL hasn't been ready to use yet. I suppose there will be more issues when we refactor more I18n related functions based on ICU. 2. ICU data has difference with RI's, for historical or other unknown reasons, either RI's or ICU's data has differences with standard(Unicode, ISO, etc), it's not so significant in technical perspective, but to be realistic it causes many compability issues (we already got several still open in JIRA system). But still, I think it worths the cost, and actually my only real issue is time...any other willing to look at this? 2007/1/10, Tim Ellison <[EMAIL PROTECTED]>:
I have applied Leo's patch to the Locale info to get him working again, but the original data in those classes comes from the CLDR. We can either recreate the Java code based on the latest version of CLDR data, or (my preference, though not yet investigated) is to ditch them and get the info from the ICU data files that we are already dependent upon. Thoughts? Tim Tim Ellison (JIRA) wrote: > > Tim Ellison resolved HARMONY-2953. > ---------------------------------- > > Resolution: Fixed > > Thanks Leo. > > Patch applied to LUNI module at repo revision r494397. > > Please check that it was applied as you expected. > > > The patch should get you going again, but the locale info is > maintained external to the Harmony project, I'll raise a discussion > on the dev list about that. > > >> [luni][util]Locale lacks some ISO countries and languages. >> ---------------------------------------------------------- >> >> Key: HARMONY-2953 >> URL: https://issues.apache.org/jira/browse/HARMONY-2953 >> Project: Harmony >> Issue Type: Bug >> Reporter: Leo Li >> Assigned To: Tim Ellison >> Attachments: patch-2953.diff >> >> >> public void test() >> { >> Locale locale = new Locale("an"); >> assertEquals("arg",locale.getISO3Language()); >> List<String> languages = Arrays.asList(Locale.getISOLanguages()); >> assertTrue(languages.contains("ak")); >> } >
-- Paulex Yang China Software Development Labotary IBM
