In this use case:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mappings PUBLIC "-//DOZER//DTD MAPPINGS//EN"
"http://dozer.sourceforge.net/dtd/dozerbeanmapping.dtd">
<mappings>
<mapping map-id="caseA">
<class-a>com.FormA</class-a>
<class-b>com.FormB</class-b>
<field-exclude>
<a>loanNo</a>
<b>loanNo</b>
</field-exclude>
<field map-id="caseC">
<a>forms</a>
<b>forms</b>
</field>
</mapping>
<mapping map-id="caseB">
<class-a>com.FormA</class-a>
<class-b>com.FormB</class-b>
</mapping>
<mapping map-id="caseC">
<class-a>com.FormC</class-a>
<class-b>com.FormD</class-b>
<field-exclude>
<a>loanNo</a>
<b>loanNo</b>
</field-exclude>
</mapping>
<mapping map-id="caseD">
<class-a>com.FormC</class-a>
<class-b>com.FormD</class-b>
</mapping>
</mappings>
Dozer get confused on :
<field map-id="caseC">
<a>forms</a>
<b>forms</b>
</field>
and thinks the 'name' field in the forms is an ArrayList.
Logged In: YES
user_id=550744
This is fixed and in v20 branch.