When trying to marshall a class which has a method that returns an Iterator a ClassCastException is thrown.
java.lang.ClassCastException: java.util.AbstractList$Itr
at org.exolab.castor.mapping.loader.J2CollectionHandlers$6.elements(J2CollectionHandlers.java:276)
at org.exolab.castor.mapping.loader.FieldHandlerImpl.getValue(FieldHandlerImpl.java:444)
at org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:1740)
at org.exolab.castor.xml.Marshaller.marshal(Marshaller.java:836)
at test.castor.IteratorMarshallTest.testMarshallIterator(IteratorMarshallTest.java:28)
This is because an Iterator is being cast to an Enumeration at line 276 in org.exolab.castor.mapping.loader.J2CollectionHandlers.
[Our project used Castor 0.9.9. We moved to Castor 1.1.2.1 recently and started seeing this problem]