java - 在使用 CamelContext.start() 进行路由之前,如何在 org.apache.camel.CamelContext 中测试端点是否存在无效凭据或无效 URL?
问题描述
我一直在使用ApacheCamel连接到 ftp/sftp,但是当(ftp/sftp 的)凭据无效时,我发现当我调用 CamelContext.start() 方法进行路由时,camel 不会抛出任何异常。那么在调用 start 方法之前是否有任何方法可用于测试端点的凭据,或者在连接到 ftp/sftp 之前我可以实现的任何解决方法。
解决方案
我猜您说的是Camel FTP 生产者。我假设只要没有要路由的消息,它就不会连接到远程服务器。
由于组件在路由启动时没有执行您想要的操作,因此您可以选择实施Route Policy。基类RoutePolicySupport
为您提供了一个良好的开端。
在路由策略中,您可以实现回调,onStart
并添加在给定事件发生时执行的自定义逻辑。
推荐阅读
- java - 如何从 Spring Data JPA GROUP BY 查询返回对象列表而不是对象数组
- javascript - 将自定义对象返回给 GraphQL 解析器
- elastic-stack - logstash 向 elasticseach 集群发送数据的问题
- jsf - Primefaces获取排序列的名称
- reactjs - 使用 Iframe 将应用程序反应到受 IdentityServer4 保护的 MVC
- apache-spark - 如何从 spark rdd map 和 reduce 操作写入单个文件
- eclipse - 如何在 Eclipse RCP 应用程序 (Java) 中使用 Tycho 检索依赖项的许可证信息?
- android - 对话框片段在 API 23 及更低版本上被裁剪
- javascript - Javascript对象未推入数组
- git - 合并以掌握具有先前共同历史的两个分支