How to map collections in Dozer
data-mapping, dozer, java, mapping
Solution
To quote:
"Nested collections are handled automatically, but you are correct that top level collections need to be iterated over. Currently there isn't a more elegant way to handle this."
Someone has figured a way to do it without a looping construct in your code base, but I think it's just easier (and more readable/maintainable) to put it in your code. Hopefully they'll add this ability sooner than later.
Problem
I'd like to do something like: ``` ArrayList<CustomObject> objects = new ArrayList<CustomObject>(); ... DozerBeanMapper MAPPER = new DozerBeanMapper(); ... ArrayList<NewObject> newObjects = MAPPER.map(objects, ...); ``` Assuming: ``` <mapping> <class-a>com.me.CustomObject</class-a> <class-b>com.me.NewObject</class-b> <field> <a>id</a> <b>id2</b> </field> </mapping> ``` I tried : ``` ArrayList<NewObject> holder = new ArrayList<NewObject>(); MAPPER.map(objects, holder); ``` but the holder object is empty. I also played with changing the second argument without any luck...