rss - 如果 Feed 入站适配器抛出异常,如何动态注销 IntegrationFlowContext 的 IntegrationFlow?
问题描述
我在 MongoDB 集合中插入了一些提要。
在我的 Spring Integration 应用程序中,我使用 MongoDB 入站适配器定期读取提要集合并检查提要是否启用。
如果 fedd 已启用但尚未在 IntegrationFlowContext 中,我会注册它。
创建提要 IntegrationFlow 后,它会定期读取提要以提取文章。
问题是,如果 Feed 入站适配器抛出异常,例如因为 URL 不再有效,我如何才能捕获此异常(没有可用的错误通道)并取消注册 IntegrationFlowContext 的提要?
我创建了一个要点来揭露我的问题https://gist.github.com/OttoDev/63d31f301bdd777694f4331cab782913
解决方案
为什么需要动态注册呢?通过 start()/stop() 生命周期控制来处理禁用/启用就足够了。无论如何,入站通道适配器可以配置为errorChannel
见第二个参数IntegrationFlows.from()
。
推荐阅读
- stored-procedures - 在子表中插入新记录的存储过程
- javascript - webpack 错误:CLI 移动到一个单独的包中:webpack-cli
- angular - 测试 angular coreModule 并防止重新导入
- php - 从 FTP 下载一个大文件 (~500 Mb) 到本地存储,而不破坏服务器
- c++ - ESP8266 上的 Arduino WiFiClientSecure 间歇性连接失败
- javascript - 反应原生如何在方法中使用道具
- presto - 如何调试 presto 服务器项目?
- ruby-on-rails - 当服务器在 Localhost 上时,链接到 FlightRadar24 的 HTTP 错误 418(茶壶错误)
- java - 在 Spring Boot 中使用 cookie 进行身份验证
- python - Python:缩放 4d 数组中的所有第 4 维值?