Web Talend将动态值传递到tSOAP消息中
我使用的是BD5.6.1 我使用的是tSOAP组件,如果我使用的是吹气流,它可以正常工作。 tsoap-->日志行 我可以将SOAP请求消息粘贴到tsoap节点的SOAP消息部分,它可以正常工作。。 但是现在我想读取excel文件并动态地将值传递给tSOAP组件的SOAP消息,这是如何做到的 我需要传递的SOAP消息示例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
"<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以查看您得到了什么?