Pentaho-carte Rest api?

问题描述 投票:0回答:2

我刚刚开始使用 Pentaho 数据集成,并且能够从 UI 创建转换/作业并从 UI 以及 Pentaho DI java SDK 运行它们。另外,我成功设置了 carte 服务器,提交了转换,并在 carte webUI 上监控了它的状态。

我的问题是

carte 服务器是否还公开任何 JSON/XML Rest API,我可以通过这些 API 提交作业/转换并监控其进度?目前似乎仅开发用于通过浏览器使用。

谢谢 - 尼丁,

pentaho pentaho-data-integration
2个回答
4
投票

是的,REST API 存在。

Carte 基于 Jetty 服务器,旨在在 Web 浏览器上使用,但没有理由阻止像

http://your-server:9090/kettle/status?xml=true
那样发送/接收请求。

但是,我看到两个主要障碍:首先,您将收到 html,您必须从中提取相关信息。这并不难,但必须由你来完成。

其次是文档。 社区文档相当短,并且EE版本文档没有解决这个问题。有一个“地下文档”,但可能已经过时(或者可能存在我不知道的更新版本)。 所以你一定要在

论坛

和来源[来源][5]中爬行。在 org.pentaho.di.www 包中,你会发现很多

*Servlet.java
,每一个都对应一个动作,其 url 定义在类开头的变量
CONTEXT_PATH
中。

例如,类 org.pentaho.di.www.RunTransServlet.java 在第 58 行包含:

public static final String CONTEXT_PATH = "/kettle/runTrans";

,表示运行转换的 url 为

http://your-server:9090/kettle/runTrans?...
。那么现在你有 2 个参数:转换名称和日志级别,可以通过查看 html 文档第 68-145 行,也可以通过阅读
doGet
方法的代码。

这比听起来容易得多(感谢 Matt Casters 和 Jens Bleuel 在软件工程方面的天赋)。

我自己做了一个小的ajax界面,信息较少。那是在他们发明 CORS 东西之前,所以你必须检查

Access-Control-Allow-Origin: *

是否已写入响应标头。


因此,如果您足够勇敢并计划朝这个方向做一些事情,请让我了解最新情况,并毫不犹豫地寻求帮助。


0
投票

© www.soinside.com 2019 - 2024. All rights reserved.