Our orginal impl of DateFormat depends on the resource bundles which I just removed from luni. This data is also included in icu4j's release in different format. Further more, exsiting implementation of DecimalFormat, Bidi, Collator etc. depend on icu already. So I think basically it is not a bad solution for us to migrate to icu.
By delegation to icu, it is not necessary for us to maintain this data by ourselves and we can also leverage icu's tools to easily customize it if there is a requirement in the future. For the failure you mentioned above, I have no perfect solution currently. It wraps the com.ibm.icu.util.DateFormat.Field in its internal implementation so that I can not find an API to replace it with corresponding classes in java.text. I think the possible solution is to write an adaptor to get icu's Field and craft a new collection with java.text.DataFormat.Filed, but it does reduce the performance. Do you have any suggestion on this case? On 11/8/07, Alexey Petrenko <[EMAIL PROTECTED]> wrote: > I finally found a guilty commit for this failure. > This was Tony's r592434 commit. > > I'm not text guru but as far as I understood Tony has removed all the > formatting functionality from text module and delegated it to ICU. > As not text guru I'm not sure is this strategically correct move or not... > Thoughts? > > As a result java.text.DateFormat.formatToCharacterIterator method > starts return the array of com.ibm.icu.text.DateFormat.Field > instances instead of java.text.DateFormat.Field. > I can not say that this is strictly contradicts the spec. But I would > say that it contradicts "feeling from spec" :) > So I'd prefer this to be fixed. > Probably now we have more places like this... > > Thoughts? > > Thanks in advance. > > SY, Alexey > > 2007/11/7, Alexey Petrenko <[EMAIL PROTECTED]>: > > https://issues.apache.org/jira/browse/HARMONY-5085 to track... > > > > 2007/11/7, Alexey Petrenko <[EMAIL PROTECTED]>: > > > Guys, > > > > > > looks like we have new stable swing tests failure: > > > InternationalFormatterRTest.testIncrementDecrement > > > > > > com.ibm.icu.text.DateFormat$Field > > > java.lang.ClassCastException: com.ibm.icu.text.DateFormat$Field > > > at > > > org.apache.harmony.awt.text.TextUtils.getCalendarField(TextUtils.java:1067) > > > at > > > javax.swing.text.InternationalFormatter$IncrementAction.handleText(InternationalFormatter.java:68) > > > at > > > javax.swing.text.InternationalFormatter$IncrementAction.actionPerformed(InternationalFormatter.java:59) > > > at > > > javax.swing.text.InternationalFormatterRTest.testIncrementDecrement(InternationalFormatterRTest.java:92) > > > at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java) > > > at > > > javax.swing.BasicSwingTestCase.runBareSuper(BasicSwingTestCase.java:117) > > > at javax.swing.SwingTestCase$1.run(SwingTestCase.java:45) > > > at java.awt.event.InvocationEvent.runAndNotify(InvocationEvent.java:92) > > > at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:81) > > > at java.awt.EventQueueCore.dispatchEventImpl(EventQueueCore.java) > > > at java.awt.EventQueue.dispatchEvent(EventQueue.java:144) > > > at java.awt.EventDispatchThread.runModalLoop(EventDispatchThread.java:74) > > > at java.awt.EventDispatchThread.run(EventDispatchThread.java:48) > > > > > > I'd say that it looks like this test fail since our last ICU update... > > > > > > I'll take care... > > > > > > SY, Alexey > > > > > > -- Tony Wu China Software Development Lab, IBM
