Я новичок в структуре карты. Я пытаюсь преобразовать JSON в XML. Мой компонент XML ищет тип XSI. Я выполнил настраиваемое сопоставление с приведением объекта типа XSI. Но в XML отсутствует тип XSI. который является лидером в подсистемах.
default com.test.sales.types.Order map(com.test.order.types.Order value) {
if (value != null) {
com.test.sales.types.Order mapping = null;
if (value instanceof com.test.order.types.X)
mapping = map((com.test.order.types.X) value);
else if (value instanceof com.test.order.types.Y)
mapping = map((com.test.order.types.Y) value);
return mapping;
}
return null;
};
<order xsi: type = "X> .... </order> <order xsi: type = " Y> .... </order>
Он работает нормально, если вы установите объект на объект корневого элемента.
default com.test.sales.types.X mapX(com.test.order.types.Order value) {
com.test.sales.types.Order mapping =
mapping = map((com.test.order.types.X) value);
return mapping;
};
default com.test.sales.types.Y mapY(com.test.order.types.Order value) {
com.test.sales.types.Order mapping =
mapping = map((com.test.order.types.Y) value);
return mapping;
};
default com.test.sales.types.Sales map(com.test.order.types.Sales data) {
com.test.sales.types.Sales returns = new com.test.sales.types.Sales();
if (data.getOrder().getIsXObj()) {
returns.setOrder(mapX(data.getOrder()));
} еще {
returns.setOrder(mapY(data.getOrder()));
} }
Что значит типа XSI отсутствует? MapStruct отображает объекты, а не XML. Можете ли вы показать нам лучший пример с реальным неправильным кодом?