在没有方法集的情况下使用 DOZER 进行映射
Mapping with DOZER without method set
我正在尝试转换两个具有 java.util.List 类型属性的 classes,但是其中一个 classes 没有方法 "set*"方法 "get*" 像这样:
<mapping>
<class-a>com.mycompany.bean.SocioPj</class-a>
<class-b>com.mycompany.jaxb.SocioPjXml</class-b>
<field>
<a set-method="getListaSocios().add">listaSocios</a>
<b>listaSocios</b>
<a-hint>com.mycompany.bean.SocioPf,com.mycompany.bean.SocioPj</a-hint>
<b-hint>com.mycompany.jaxb.SocioPfXml,com.mycompany.jaxb.SocioPjXml</b-hint>
</field>
</mapping>
上面的示例 class:当我尝试转换时,SocioPj 没有方法 setListSocios() 我发现了这个错误:
[Time:2015-03-24 11:29:08,055][Level:ERROR][Thread:http-bio-8080-exec-10][OnboardingCCMFulfillmentImpl] org.dozer.MappingException: java.lang.ClassNotFoundException: /add
有人遇到过这个问题吗?
你可以告诉 Dozer 直接访问字段而不调用 getter/setter(即使字段是 private
):
<field>
<a is-accessible="true">listaSocios</a>
<b>listaSocios</b>
</field>
我正在尝试转换两个具有 java.util.List 类型属性的 classes,但是其中一个 classes 没有方法 "set*"方法 "get*" 像这样:
<mapping>
<class-a>com.mycompany.bean.SocioPj</class-a>
<class-b>com.mycompany.jaxb.SocioPjXml</class-b>
<field>
<a set-method="getListaSocios().add">listaSocios</a>
<b>listaSocios</b>
<a-hint>com.mycompany.bean.SocioPf,com.mycompany.bean.SocioPj</a-hint>
<b-hint>com.mycompany.jaxb.SocioPfXml,com.mycompany.jaxb.SocioPjXml</b-hint>
</field>
</mapping>
上面的示例 class:当我尝试转换时,SocioPj 没有方法 setListSocios() 我发现了这个错误:
[Time:2015-03-24 11:29:08,055][Level:ERROR][Thread:http-bio-8080-exec-10][OnboardingCCMFulfillmentImpl] org.dozer.MappingException: java.lang.ClassNotFoundException: /add
有人遇到过这个问题吗?
你可以告诉 Dozer 直接访问字段而不调用 getter/setter(即使字段是 private
):
<field>
<a is-accessible="true">listaSocios</a>
<b>listaSocios</b>
</field>