Talend - 仅在一个

时间:2015-08-11 11:54:01

标签: java web-services architecture jobs talend

我正在创建一个调用两个Web服务的作业。我必须管理错误案例。

用例:

  1. 用户发送他的信息(user1,user2)(tRestRequest)
  2. 作业调用第一个webService并获取信息(tRestClient)
  3. 作业调用第二个webService并获取信息(tRestClient)
  4. 作业合并信息并构建响应(tXMLMap)
  5. 作业回复信息(tRestResponse)
  6. 我的问题:tRestClient有两个输出:OK和ERROR。如何合并这条路径继续工作?

    我用蓝色箭头连接一个屏幕,理想情况(但Talend不接受)。如果我的第一个网络服务出现问题,我必须继续这项工作。

    我尝试删除错误输出但如果在tRestClient中抛出异常,则作业崩溃。

    有人有想法吗?谢谢你的支持!

    约翰

    Idyllic situation

1 个答案:

答案 0 :(得分:0)

我最近遇到了一个问题,我需要运行其中一个任务然后,无论我运行哪个任务,我都想对输出流进行相同的处理。我发现您可以使用Component OK触发器从多个位置触发组件。所以我在每个流的末尾粘贴了一个必须合并在一起的tSetGlobalVar,然后使用所有这些的Component OK触发器来触发tFixedFlowInput,它重建了我设置的全局变量的流并继续我的处理那里。它对我来说很好。如果您愿意,可以使用tFlowToIterate,但是您必须取消选中“在全局变量中使用默认值(键,值)”复选框,这样您就可以在所有变量中指定相同的全局变量名。