- milestone: --> Dozer v5.3.2
- priority: 5 --> 9
Hi,
Am not getting the data for child list objects when i retrieve the parent List objects.
For Example:
VO classes :
public class ClassVO {
private List<SubClassOneVO> subClassOneVOList;
public void setSubClassOneVOList(List<SubClassOneVO> subClassOneVOList){
this.subClassOneVOList = subClassOneVOList;
}
public List<SubClassOneVO> getSubClassOneVOList(){
if(this.subClassOneVOList == null){
this.subClassOneVOList = new ArrayList<SubClassOneVO>();
}
return this.subClassOneVOList;
}
}
public class SubClassOneVO {
private Integer id;
public Integer getId(){
return id;
}
public void setId(Integer id){
this.id = id;
}
private List<SubClassTwoVO> subClassTwoVOList;
public void setSubClassTwoVOList(List<SubClassTwoVO> subClassTwoVOList){
this.subClassTwoVOList = subClassTwoVOList;
}
public List<SubClassTwoVO> getSubClassTwoVOList(){
if(this.subClassTwoVOList == null){
this.subClassTwoVOList = new ArrayList<SubClassTwoVO>();
}
return this.subClassTwoVOList;
}
}
public class SubClassTwoVO {
private String prop1;
public String getProp1() {
return prop1;
}
public void setProp1(String prop1) {
this.prop1 = prop1;
}
}
DTO classes :
public class ClassDTO {
private List<SubClassOneDTO> subClassOneDTOList;
public void setSubClassOneDTOList(List<SubClassOneDTO> subClassOneDTOList){
this.subClassOneDTOList = subClassOneDTOList;
}
public List<SubClassOneDTO> getSubClassOneDTOList(){
if(this.subClassOneDTOList == null){
this.subClassOneDTOList = new ArrayList<SubClassOneDTO>();
}
return this.subClassOneDTOList;
}
}
public class SubClassOneDTO {
private String id;
public String getProp1() {
return prop1;
}
public void setProp1(String prop1) {
this.prop1 = prop1;
}
private List<SubClassTwoDTO> subClassTwoDTOList;
public void setSubClassTwoDTOList(List<SubClassTwoDTO> subClassTwoDTOList){
this.subClassTwoDTOList = subClassTwoDTOList;
}
public List<SubClassTwoDTO> getSubClassTwoDTOList(){
if(this.subClassTwoDTOList == null){
this.subClassTwoDTOList = new ArrayList<SubClassTwoDTO>();
}
return this.subClassTwoDTOList;
}
}
public class SubClassTwoDTO {
private String prop1;
public String getProp1() {
return prop1;
}
public void setProp1(String prop1) {
this.prop1 = prop1;
}
}
Mapping File:
<?xml version="1.0" encoding="UTF-8"?>
<mappings xmlns="http://dozer.sourceforge.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dozer.sourceforge.net
http://dozer.sourceforge.net/schema/beanmapping.xsd">
<mapping>
<class-a is-accessible="false">com.sg.test.dozerclasses.ClassVO</class-a>
<class-b is-accessible="true">com.sg.test.dozerclasses.ClassDTO</class-b>
<field >
<a>subClassOneVOList</a>
<b>subClassOneDTOList</b>
<b-deep-index-hint>com.sg.test.dozerclasses.SubClassOneDTO</b-deep-index-hint>
</field>
<!-- Not working -->
<field >
<a>subClassOneVOList.subClassTwoVOList</a>
<b>subClassOneDTOList.subClassTwoDTOList</b>
</field>
</mapping>
</mappings>
Problem :
As per the above example am getting List of SubClassOneDTO data which are mapped to List of SubClassOneVO, but am not getting the List of SubClassTwoDTO data for each SubClassOneDTO.
Could you please guide me how to do deep mapping LIst inside a List ?