我使用MapStruct库来映射对象,但是我收到了这个错误:
无法将属性"java.util.Date aDate"映射到"javax.xml.bind.JAXBElement ADATE".考虑声明/实现映射方法:"javax.xml.bind.JAXBElement map(java.util.Date value)".
我的问题:我应该在哪里取消这种映射方法?
我通过编写另一个类解决了这个问题:
public class DateMapper { public JAXBElementmap(Date value) { // conversion here return atswer; } }
并使用此注释:
@Mapper(uses=DateMapper.class)
有两种选择:
使您的映射器成为抽象类而不是接口,并直接在映射器类中实现该方法
在另一个类上实现该方法,并将其声明为您的映射器“已使用”;有关更多详细信息,请参见参考指南
顺便说一句。如果您使用XMLGregorianCalendar
或JAXBElement
代替JAXBElement
原始类型,则应自动完成映射。