繁体   English   中英

即使顺序=“真”,WSO2迭代调解器也不会维护顺序

[英]WSO2 Iterate mediator does not maintain order even though sequential="true"

我有这样的场景,

  1. 阅读包含附件(即图像)的未读 gmail
  2. 为了迭代附件,我在 WSO2 EI 中使用了 Iterate Mediator
  3. 将每个图像附件插入 Salesforce 文件对象。

过程工作正常。 我在这里的问题是,即使设置 Sequential="true" ,迭代调解器也不会保持电子邮件正文中显示的附件的顺序

<iterate continueParent="true" description="MailIterator" expression="//parts" id="listUnread" sequential="true">
    <target>
        <sequence>
            <property expression="//filename/text()" name="AttachedFileName" scope="default" type="STRING"/>
            <property expression="substring-after(get-property('AttachedFileName'),'.')" name="Attachmentextension" scope="default" type="STRING"/>
            <filter description="check emailSubject" regex="jpg|jpeg|png|gif|webp|tiff|tif|psd|raw|bmp|dib|heif|heic|indd|ind|jp2" source="get-property('Attachmentextension')">
                <then>
                    <property description="emailAttachmentId" expression="//attachmentId/text()" name="uri.var.attachmentId" scope="default" type="STRING"/>
                    <log level="custom">
                        <property expression="get-property('AttachedFileName')" name="=====ValidAttachmentFileName===="/>
                        <property expression="get-property('uri.var.attachmentId')" name="====emailAttachmentId====="/>
                    </log>
                     <!-- Salesforce file object insert process done here  -->
                </then>
                <else>
                    <log level="custom">
                        <property expression="fn:concat('Image format. FileName is:',get-property('AttachedFileName'))" name="===Invalid"/>
                    </log>
                </else>
            </filter>
        </sequence>
    </target>
</iterate>

它以不同于电子邮件正文附件顺序的其他顺序处理所有附件 请任何人澄清这一点。 提前致谢。

使用带有选项 blocks="true" 的调用中介来执行同步调用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM