使用 JSON 的 Pentaho HTTP Post

use*_*132 2 json http pentaho

我是 Pentaho 的新手,我正在尝试执行以下工作流程:

  • 从数据库中读取一堆行
  • 做一些转换
  • 将它们以 JSON 格式发布到 REST Web 服务

我已经使用输入步骤和 Json 输出步骤找出了前两个。

但是,我在做最后一步时遇到了两个问题:

1) 我无法按照我想要的方式格式化 JSON。它坚持在{""=[{...}]}我想要的时候做{...}。这没什么大不了的 - 我可以解决这个问题,因为我可以控制 Web 服务,并且可以稍微放宽输入要求。(注意:这个页面http://wiki.pentaho.com/display/EAI/JSON+output通过设置no. rows in a block=1和一个空的 JSON 块名称给出了我想要的输出示例,但它不像宣传的那样工作。)

2)这是最关键的。我无法将数据作为 JSON POST。它发布为key=value,其中键是我在 HTTP Post 字段名称(在“字段”选项卡上)中指定的名称,值是编码的 JSON。我只想将 JSON 作为请求正文发布。我试过谷歌搜索,但找不到其他人在做这件事,这让我相信我只是在接近这个错误。任何指向正确方向的指针?

编辑:我很喜欢编写脚本(使用 Javascript 或其他语言),但是当我尝试在自定义 javascript 片段中使用 XmlHttpRequest 时,我收到一个错误,即 XmlHttpRequest 未定义。

谢谢!

use*_*132 5

这是微不足道的......只需要使用 REST 客户端(http://wiki.pentaho.com/display/EAI/Rest+Client)而不是 HTTP Post 任务。不知何故,我所有的谷歌搜索都没有发现这一点,所以我会把这个答案留在这里,以防其他人和我有同样的问题。