场景:我将尝试与EIP书中的贷款经纪人示例进行类比
问题
我做了什么
问题
希望我的描述足够清楚,你可以看到这是一个非常简单的实现。它有什么限制?如何将此注册转换为osgi服务?
答案 0 :(得分:4)
我为客户开发了一个基于SpringDM的解决方案。在http://www.jakubkorab.net/2012/05/system-integrations-as-plugins-using-camel-and-servicemix.html完整写了如何执行此操作,并在https://github.com/FuseByExample/smx-application-plugins提供了完整的源代码
希望有所帮助。
答案 1 :(得分:2)
在OSGi中,您可以使用一个很棒的注册表:OSGi服务注册表。所以我的建议是略有不同。为引用请求定义服务接口并将其存储在api包中。然后让每个银行实现此接口并将实现发布为OSGi服务。
贷款经纪人捆绑包然后可以列出OSGi服务注册表中的所有OSGi服务,并调用每个服务以获取报价。在蓝图中有一个很好的标记,您可以使用它将列表注入List的bean属性。 Spring DM也许有类似的东西。
Camel目前无法调用某种类型的所有OSGi服务。我们讨论了一个能够做到这一点的新的osgi服务组件。所以我们很快就会有一个解决方案。