Bug 57898 - Fix for #50786 breaks API of HSSFColor.getIndexHash()
Summary: Fix for #50786 breaks API of HSSFColor.getIndexHash()
Alias: None
Product: POI
Classification: Unclassified
Component: HSSF (show other bugs)
Version: 3.8-FINAL
Hardware: PC All
: P2 normal (vote)
Target Milestone: ---
Assignee: POI Developers List
Depends on:
Reported: 2015-05-07 13:16 UTC by Tobias Gruetzmacher
Modified: 2015-05-07 13:25 UTC (History)
0 users


Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Gruetzmacher 2015-05-07 13:16:38 UTC
The fix commited for bug #50786 (r1077920) changes the return value of  HSSFColor.getIndexHash() from java.util.Hashtable to java.util.Map.

This breaks libraries that used the old return value and are built against POI 3.6 and run with POI 3.9 (in my case):

java.lang.NoSuchMethodError: org.apache.poi.hssf.util.HSSFColor.getIndexHash()Ljava/util/Hashtable;
Comment 1 Nick Burch 2015-05-07 13:25:35 UTC
I'm not sure we're going to be able to fix this, sorry. Having a Hashtable as a return type isn't ideal, Map is generally cleaner. Additionally, the change occurred over 4 years ago, so large numbers of people will have written / updated their code to the new signature, which means a change back would affect too many people

POI 3.6 is getting on for 6 years old now! Anything using that really really ought to be upgraded to something more modern, just see http://poi.apache.org/changes.html#3.6 for an idea of the features and bug fixes since then