如何在ORIKA中映射类型对象的属性

时间:2018-10-09 14:14:08

标签: mapping hybris orika converters objectfactory

我有一个OrderEntryData类,内部有一个属性,它是configurationInfoData的列表(List ),在此ConfigurationInfoData内有类型对象的属性(对象值)。 该值有时是日期,字符串或customClass。

我正在将Orika用于Web服务,并且正在尝试解决OrderEntryDTO类。

文件:customcommerceWebServices-beans.xml

<bean class="de.hybris.platform.commercewebservicescommons.dto.order.ConfigurationInfoWsDTO">
    <property name="label" type="java.lang.String" />
    <property name="value" type="java.lang.Object" />
</bean>

<bean class="de.hybris.platform.commercewebservicescommons.dto.order.OrderEntryWsDTO">
    <property name="configurationInfos" type="java.util.List&lt;de.hybris.platform.commercewebservicescommons.dto.order.ConfigurationInfoWsDTO>" />
    <property name="orderCode" type="java.lang.String" />
</bean>

我正在测试一个对象,它是AddressData的一个实例。 原因是地址对象的映射/转换工作正常 AddressData-> AddressDTO

问题是(我认为)Orika无法识别对象的实例(对象源)或目标类(对象目标)。 在响应中,我应该有一个AddressWsDTO,但我得到:

“ de.hybris.platform.cmssmarteditwebservices.dto.AbstractPageWsDTO@54330c75”

我尝试实现转换器是因为我在想Orika可能不知道如何将对象转换为AddressData(不起作用)。

@WsDTOMapping
public class ScalpAddressConverter extends BidirectionalConverter<AddressData, Object> {

@Override
public Object convertTo(AddressData addressData, Type<Object> type, MappingContext mappingContext) {
    return (Object) addressData;
}

@Override
public AddressData convertFrom(Object o, Type<AddressData> type, MappingContext mappingContext) {
    return (AddressData) o;
}
}

0 个答案:

没有答案