我有一个调用外部 Web 服务的 Mule 应用程序。在调用此 Web 服务之前,我必须调用会话密钥 Web 服务来检索会话密钥以发送到原始目标 Web 服务。此会话密钥服务每次将相同的公司名称参数作为登录名作为输入,并在每次调用时返回一个唯一的字符串,有效期为 10 分钟。每个 Web 服务调用必须使用唯一的密钥,并且不能同时使用两个。
所以这些会话密钥不能被任何东西键入,因为只有 1 次登录,但该 1 次登录有多个不同的会话密钥。
为此,我一直在研究 Apache Commons Pool,更具体地说 - GenericObjectPool 不需要每个会话密钥都被键入,效果很好。
但我正在努力以一种很好的方式将它与 Mule 整合在一起。我已经使用 Spring 进行了设置,并且我必须实现的接口要求我将所有的 http 请求和转换等用于联系 Java 代码中的外部 Web 服务。但理想情况下,我想为此使用 Mules 核心传输和变压器。
构建这个的最佳方法是什么?
创建拦截器?
将传输注入我的自定义代码?
或者有没有更好的方法来做更适合 Mule 的简单非键池化?
任何指导表示赞赏。