commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Saff (JIRA)" <j...@apache.org>
Subject [jira] Created: (COLLECTIONS-265) TreeBag allows uncomparable item to be added, breaking toString
Date Mon, 10 Sep 2007 19:38:29 GMT
TreeBag allows uncomparable item to be added, breaking toString
---------------------------------------------------------------

                 Key: COLLECTIONS-265
                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-265
             Project: Commons Collections
          Issue Type: Bug
          Components: Bag
    Affects Versions: 3.2
            Reporter: David Saff
            Priority: Minor


The following code throws an exception not when the Object is added, but when toString is
called:

		TreeBag bag = new TreeBag();
		bag.add(new Object());
		bag.toString();

Trace:

java.lang.ClassCastException: java.lang.Object
	at java.util.TreeMap.compare(TreeMap.java:1093)
	at java.util.TreeMap.getEntry(TreeMap.java:347)
	at java.util.TreeMap.get(TreeMap.java:265)
	at org.apache.commons.collections.bag.AbstractMapBag.getCount(AbstractMapBag.java:116)
	at org.apache.commons.collections.bag.AbstractMapBag.toString(AbstractMapBag.java:581)
[...]

In a client program, toString should never throw an exception--it makes debugging much harder,
for one thing.  I believe that TreeBag should defend against the addition of uncomparable
objects, so that toString will never throw an exception.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message