WSO2 - посредник Smooks работает только с первым элементом полезной нагрузки - PullRequest
0 голосов
/ 22 апреля 2020

Я использую посредник smooks, чтобы заполнить список записей сотрудников пробелами. Заполнение работает, единственная проблема заключается в том, что он применяется к первому сотруднику, но не к следующим сотрудникам. Не только это, но только первый сотрудник делает это в файл, который я создаю, ни один из других. Я поместил в журнал, чтобы убедиться, что полезная нагрузка, передаваемая посреднику smooks, включает всех моих сотрудников, что и есть. Эта полезная нагрузка в основном:

<Employee>
   <RecordType>
      <Name/>
      <Address/>
   </RecordType>
   <RecordType>
      <Name/>
      <Address/>
   </RecordType>
</Employee>
<Employee>
   <RecordType>
      <Name/>
      <Address/>
   </RecordType>
   <RecordType>
      <Name/>
      <Address/>
   </RecordType>
</Employee>

Мой медиатор smooks читает вот так:

<?xml version="1.0" encoding="UTF-8"?>
<localEntry key="newHire-smooks-config" xmlns="http://ws.apache.org/ns/synapse">
    <smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd" xmlns:file="http://www.milyn.org/xsd/smooks/file-routing-1.1.xsd" xmlns:fl="http://www.milyn.org/xsd/smooks/fixed-length-1.3.xsd" xmlns:ftl="http://www.milyn.org/xsd/smooks/freemarker-1.1.xsd">
        <params>
            <param name="stream.filter.type">SAX</param>
            <param name="default.serialization.on">false</param>
        </params>
        <resource-config selector= "Employee">
            <resource>org.milyn.delivery.DomModelCreator</resource>
        </resource-config>
        <ftl:freemarker applyOnElement="Employee">
            <ftl:template>
                <!--${.vars["Employee"].RecordType?right_pad(3)}${.vars["Employee"].BlankSpace1?right_pad(1)}${.vars["Employee"].Address?right_pad(10)}${'\n'}-->
            </ftl:template>
        </ftl:freemarker>
    </smooks-resource-list>
</localEntry>

Есть идеи, почему только одна запись могла бы вырезать здесь?

Спасибо заранее.

...