java - 如何通过循环值并为每个文件进行 HTTP 调用来生成多个文件?

标签 java groovy mule esb

粗略地:我定期使用不同的路径调用同一主机,例如,

对于其中每一个:

  • 运行相同的数据转换
  • 编写一个包含结果的特定命名文件

我目前使用 Quartz 连接器来触发单个 URI 的处理。相反,我想触发一些在 URI 集合中使用相同子流的东西。我可以从脚本组件启动流程,但我需要知道如何将值(至少是 URI 或 URI 片段)传递给该脚本。

我考虑过的其他选项:

  • 使用我脚本中的值命中 Mule HTTP 端点,并在子流程中使用它
  • 将一个值放入消息队列中,并在子流周围的薄包装器中使用它们

我愿意接受更好的选择。

最佳答案

您可以在一个流程中完成此操作:

  • 使用 poll 范围或 quartz 端点生成一 strip 有 List 负载的消息,其中每个路径包含一个字符串(例如,["foo", "bar", "baz"])。
  • 添加一个集合拆分器,将此消息拆分为 n 条消息
  • 完成地址类似于 http://lvh.me/#[message.payload] 的参数化出站 HTTP 端点

上面假设您对 lvh.me 执行 HTTP GET。如果您进行发布,则需要复制 flowVar 中的负载,创建正确的负载,然后在执行 POST 的 HTTP 出站端点中使用 flowVar 和负载。

关于java - 如何通过循环值并为每个文件进行 HTTP 调用来生成多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25670045/

相关文章:

java - 我的拖放功能在 Android Studio 中不起作用

java - PHP 和 Java 中的 SHA256

java - Eclipse 中的代码清理 - 如何在非 javadoc 注释中保留空行?

java - 是否可以将 Groovy 的 SwingBuilder 与 Java JFrame 子类结合起来?

java - grails 中的 log4j : how to log into file?

mule - 如何在 Mule 中将 org.glassfish.grizzly.utils.BufferInputStream 转换为 JSON?

java - 如何为我的 java 程序按日期制定/设置时间限制

java - Grails 与 REST 的 Spring 性能

java - 添加两个 xml。使用 XSLT 变压器

java - Mule 默认捕获异常并停止流程