【问题标题】:Calling WCF service from Datastage - Output to XML file从 Datastage 调用 WCF 服务 - 输出到 XML 文件
【发布时间】:2011-12-06 03:08:12
【问题描述】:

我开发了一个 WCF 服务,它以 [DataContracts] 形式返回数据可序列化对象。我组织中的其他人希望使用 DataStage 调用此 Web 服务并将响应输出到 XML 文件。

我们能够引用服务并正确调用它,但无法弄清楚如何配置输出(或者我们可能缺少输入参数)以将其作为 XML 传递。我们目前只取回纯文本和所有数据组合成一行。有关配置 DataStage 作业以执行此操作的任何建议或提示?

对于这篇文章的粗俗性质,我深表歉意,我对我们的 DataStage 环境一无所知(或者关于 DataStage 的任何信息)。但是,我们的 DataStage 开发人员开始建议我们的服务配置不正确,我不得不为他们做研究。

【问题讨论】:

标签: xml wcf datastage


【解决方案1】:

请您的 Datastage 团队首先确定调用是基于 SOAP 还是基于 REST。基于 SOAP 的调用可以配置到 Datastage WSTransformer 阶段,无论类型多么复杂。该工具在导入 wsdl 和 xsd 文件时可能会引发异常,但它会完成。

据我所知,Datastage 无法处理 REST 调用。即使在这里,也可以使用 Java Transformer 阶段。从基于 Eclipse 的 IDE 中开发一个 jar 文件并将该 jar 放入 DS 服务器的文件系统中。该 jar 应基于包含 Datastage 相关库的代码(从输入链接读取输入行并将输出写入并拒绝相应链接的行)。在中间,jar 文件可以通过输出/拒绝链接进行 REST 调用和格式返回结果。

【讨论】:

    【解决方案2】:

    但是我们的 DataStage 开发人员开始建议我们的服务配置不正确,我只能为他们做研究。

    向他们询问他们可以使用的配置良好的响应样本,他们所做的就是将他们的工作和责任转移给您。因此,当它起作用时,它对他们而不是您起作用。由于您对数据阶段一无所知,因此将这部分留给那些获得报酬的人,只需向他们询问可接受的格式样本并相应地使用它。

    您能否将 IE 指向服务并查看 XML 响应?

    【讨论】:

      【解决方案3】:

      按照@Arjang 的建议,您应该能够很容易地向自己和您的团队成员展示该服务正在产生什么。这里的想法是确定问题出在生产者(服务)还是消费者(在本例中为 DataStage)。

      使用WCF Test Client 发出请求并捕获响应。

      对于更复杂的情况,您可以编写一个自定义客户端(通常由控制台应用程序完成),然后启用WCF tracing 以查看服务接收和发送的消息。

      让我们知道您发现了什么。

      【讨论】:

      • 如果是这种情况,那么看起来DataStage 开发人员需要研究如何使用SOAP 服务。找到他们可以使用的任何 SOAP 服务可能是值得的,只是为了让您的服务暂时脱离等式。
      猜你喜欢
      • 1970-01-01
      • 2019-10-11
      • 2010-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-20
      • 2011-01-31
      相关资源
      最近更新 更多