Web Talend将动态值传递到tSOAP消息中

Web Talend将动态值传递到tSOAP消息中,web,talend,Web,Talend,我使用的是BD5.6.1 我使用的是tSOAP组件,如果我使用的是吹气流,它可以正常工作。 tsoap-->日志行 我可以将SOAP请求消息粘贴到tsoap节点的SOAP消息部分,它可以正常工作。。 但是现在我想读取excel文件并动态地将值传递给tSOAP组件的SOAP消息,这是如何做到的 我需要传递的SOAP消息示例 "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xml\" xmlns:urn=\"urn:HPD_Inc_Creat

我使用的是BD5.6.1 我使用的是tSOAP组件,如果我使用的是吹气流,它可以正常工作。 tsoap-->日志行 我可以将SOAP请求消息粘贴到tsoap节点的SOAP消息部分,它可以正常工作。。 但是现在我想读取excel文件并动态地将值传递给tSOAP组件的SOAP消息,这是如何做到的

我需要传递的SOAP消息示例

"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xml\" xmlns:urn=\"urn:HPD_Inc_Create_WS\">
<<urn:HelpDesk_Submit_Service>

<urn:First_Name>   </urn:First_Name>
<urn:Impact>  </urn:Impact>

</urn:HelpDesk_Submit_Service>
</soapenv:Body>
</soapenv:Envelope>"
”
您可以这样做:

读取excel文件,并为每一行(
tFlowToIterate
)调用
tSOAP
,并向其发送您构建的消息:

"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xml\" xmlns:urn=\"urn:HPD_Inc_Create_WS\">
    <soapenv:Body>
        <urn:HelpDesk_Submit_Service>
            <urn:First_Name>" + (String)globalMap.get("row10.FirstName") + "</urn:First_Name>
            <urn:Impact>  </urn:Impact>
        </urn:HelpDesk_Submit_Service>
    </soapenv:Body>
</soapenv:Envelope>"
”
“+(字符串)globalMap.get(“row10.FirstName”)+”
"
全局变量
row10.FirstName
来自
tFlowToIterate
,默认情况下,该变量为每个传入行的列创建一个名为
rowX.Column
的全局变量,您可以在组件设置中重命名该变量


您还可以使用
tESBConsumer
tXMLMap
来构建您的消息。

在使用tJava测试后,关于您的问题,它应该会起作用。您是否确保在tFileInputExcel的架构中以第一个名称命名列?您是否可以尝试打印文件的输出:tFileInputExcel-->tLogRow以查看您得到了什么?