apache-camel - camel-exec :找不到端点错误
问题描述
下面是消费者端点。尝试使用 camel exec 进程 uri 执行 linux/unix 命令。
<recipientList>
<simple>exec:bash?args=-c CFTUTIL SEND IDF=${property[cftFlowIdentifier]}, PART=${property[cftParterName]}, FNAME=${property[cftFullFilePath]}, FNAME=${property[cftDestinationPath]}/${property[cftFileName]}</simple>
</recipientList>
高于端点导致以下错误..
org.apache.camel.NoSuchEndpointException: No endpoint could be found for: PART=
请检查使用 camel exec uri 调用上述命令是否有任何问题。相同的命令在普通的 java 程序中成功执行。
解决方案
Recipient List EIP接受以逗号分隔的端点列表。如果您需要在 URL 中使用逗号,则禁用或使用其他分隔符。
<recipientList delimiter="false">
<simple>...</simple>
</recipientList>
你也可以切换到To D EIP,这样更适合你的需求,因为你只调用一个端点。
<toD uri="exec:bash?args=-c CFTUTIL SEND IDF=${property[cftFlowIdentifier]}, PART=${property[cftParterName]}, FNAME=${property[cftFullFilePath]}, FNAME=${property[cftDestinationPath]}/${property[cftFileName]}"/>
推荐阅读
- azure - 无法自动检测应用的运行时堆栈 - Azure webapp up
- python - Python:为什么这个列表理解比等效的 for 循环慢 5000 倍?
- git - 我最近的提交工作。我当前的工作集有一个错误。如何找出导致错误的更改?
- c++ - 面向数据的设计;如何优化 C++ 中的数据结构以提高性能?
- ios - SKReceiptRefreshRequest 每次都询问密码
- qt - QRemoteObjectRegistryHost 和 QRemoteObjectHost 有什么不同?
- android - android代码选择一个文件,然后通过whatsapp分享
- html - 如何将管道添加到Angular中的输入字段
- node.js - 如何将 RTMP 流放入 node.js 中的变量
- c++ - STL 是否为其标头指定标头保护?