У меня есть требование, когда входящий XML должен быть измельчен и загружен в базу данных. Все элементы имеют свои таблицы. Входящий XML выглядит следующим образом:Как перебирать элементы в XML для измельчения и загрузки в базу данных
<root>
<creditreport>
<data1>
<A>val1</A>
<B>val2</B>
</data1>
<data2>
<C>val3</C>
<D>val4</D>
</data2>
<data3>
<E>val5</E>
<F>val6</F>
</data3>
<data3>
<G>val7</G>
<H>val8</H>
</data3>
</creditreport>
</root>
Сейчас в Kettle Я проектирование общих рамок, которые бы принести XML и лоскуток его в базу данных. Я использую компонент «Получить XML-данные» для чтения XML. я определил «Xpath петля», как корень/CreditReport, а затем я прочитал полей один за другим что-то как:
name xpath Element ResultType
A data1 Node Valueof
B data1 Node Valueof
.....
.....
.....
E data3 Node Valueof
.....
.....
G data3 Node Valueof
Но проблема в том, что это измельчением только первый ряд для и отсутствует второе. Я могу понять причину, поскольку цикл XPATH только до. Если я определяю «цикл xpath» как «root/creditreport/data3», тогда проблема для элемента «data3» разрешается, но есть и другие элементы, которые могут повторяться, а затем я буду стоять снова в начальной точке моей проблемы.
Любой совет !!
ли вы имеете в виду второе "CreditReport" запись не обрабатывается или второй ряд элементов Datax? – Cyrus
@Cyrus Вторая строка данных Элементы DataX –