我有一个骡子流如下
<flow name="flow1" doc:name="f1">
<file:inbound-endpoint path="C:\input" responseTimeout="10000"
doc:name="File" />
</flow>
<flow name="flow2" doc:name="f2">
<http:inbound-endpoint address="http://localhost:8080"
doc:name="HTTP" exchange-pattern="request-response" />
<flow-ref name="flow1" doc:name="Flow Reference" />
<file:outbound-endpoint path="C:\outputfile"
responseTimeout="10000" doc:name="File" />
</flow>
我正在尝试通过使用流程将多个文件从源移动/上传到目标(可以是任何东西,例如 FTP 或文件出站等)。
这样做的原因是我想使用 CURL 从 CLI(命令行界面)调用作业。
但它不工作....
已编辑
我需要从位于我的硬盘驱动器中的特定文件夹中提取一些文件(多个文件)。然后将它们移动到一些出站进程,可以是 FTP 站点或其他硬盘驱动器位置。但是这个流程需要从 CLI 中调用。
编辑(基于大卫的回答)
我现在有如下流程
<flow name="filePickupFlow" doc:name="flow1" initialState="stopped">
<file:inbound-endpoint path="C:\Input" responseTimeout="10000" doc:name="File"/>
<logger message="#[message.payloadAs(java.lang.String)]" level="ERROR" />
</flow>
<flow name="flow2" doc:name="flow2">
<http:inbound-endpoint address="http://localhost:8080/file-pickup/start" doc:name="HTTP" exchange-pattern="request-response"/>
<expression-component>
app.registry.filePickupFlow.start();
</expression-component>
<file:outbound-endpoint path="C:\outputfile" responseTimeout="10000" doc:name="File"/>
</flow>
我遇到了几个问题
a) 我收到一个错误 -属性 initialState 未定义为流的有效属性
但是,如果我删除该属性,则流程会继续,而无需等待"http://localhost:8080/file-pickup/start"
启动。
b) 文件未移动到目标文件夹
那么我该怎么做呢?