spring cloud数据流API.1.7.3中如何使用dataflowtemplate

Posted

技术标签:

【中文标题】spring cloud数据流API.1.7.3中如何使用dataflowtemplate【英文标题】:how to use dataflowtemplate in spring cloud data flow API.1.7.3 【发布时间】:2019-01-17 14:50:45 【问题描述】:

我的问题是如何在spring cloud数据流api中使用dataflowtemplate。

https://docs.spring.io/spring-cloud-dataflow/docs/current/api/

register(String name, ApplicationType type, String uri, String metadataUri, boolean force)

知道什么是uri,但不知道什么是metadataUri,能举个例子吗?

当我启动一个任务时,它总是说空点错误?什么意思?

dataFlowTemplate.taskOperations().launch("task",null,null);

DataFlowTemplate dataFlowTemplate = new DataFlowTemplate(new URI("http://localhost:9393/"),
    restTemplate);

dataFlowTemplate.appRegistryOperations().register("batch", ApplicationType.task,"maven://com.example:demo:jar:0.0.1-SNAPSHOT",null,true);
dataFlowTemplate.taskOperations().create("task","batch");
dataFlowTemplate.taskOperations().launch("task",null,null);

【问题讨论】:

【参考方案1】:

恭喜 *** 发布第一个帖子!

参考指南中有几个示例:DataFlowTemplate。 --metadataUri 属性是选项,它用于注册一个伴随工件,其中包括已注册应用程序的所有受支持属性的键/值选项。同样,reference guide 中的更多详细信息。

我们还有一整套依赖 DataFlowTemplate 在 SCDF 中创建和启动任务的测试工具。请参考AbstractTaskTests了解更多使用模式。

【讨论】:

感谢您的回复。 DataFlowTemplate dataFlowTemplate = new DataFlowTemplate( new URI("localhost:9393/"),restTemplate); dataFlowTemplate.appRegistryOperations().register("batch", ApplicationType.task,"maven://com.example:demo: jar:0.0.1-SNAPSHOT",null,true); dataFlowTemplate.taskOperations().create("task_job","batch"); 在这段代码中,我成功注册并创建了一个名为task_job的任务。我可以找到task_job和在数据流shell中输入命令行:task launch task_job,启动成功。 但是如果我不使用shell,我会使用restful call (dataFlowTemplate.taskOperations().launch("task_job",null,null);) 来启动task_job。它说引起:java.lang.NullPointerException:null 再次,请看我上面分享的示例。它完全符合您对 RESTTemplate 的要求。没有使用外壳。

以上是关于spring cloud数据流API.1.7.3中如何使用dataflowtemplate的主要内容,如果未能解决你的问题,请参考以下文章

Spring 管理数据源

spring mvc中如何读取数据库

在spring boot中使用JDBC和spring data jpa为我的会话spring创建单独的数据源

如何在 Spring Batch 中使用 Spring 事务支持

Spring中配置数据源的4种形式

Spring学习11-Spring管理各种数据源