我有几个 OSGi 包(比如 A、B 和 C)。这些包中的每一个都有自己的使用 Spring DM XML 文件定义的 Camel 路由。
我想通过在每条路线的开头添加窃听器来监控每条路线。例如,窃听器会将数据发送到不同捆绑包中定义的路由(比如 Z)
...
<wiretap uri="direct-vm:data-gathering-route/>
...
在 bundle Z 中,我会在一个名为camelContext.xml
. 它的位置META-INF/spring
如下:
<route>
<from uri="direct-vm:data-gathering-route"/>
...
</route>
在单独的包中定义此路由的原因是因为我不想在包 A、B 和 C 中重复此操作。所以我希望我可以导入此路由定义(在包 A、B 和 C Camel 上下文文件中)使用Spring DM 导入语句,如下:
<import resource="classpath:META-INF/spring/camelContext.xml"/>
当我在 Karaf 中部署包 A、B、C 和 Z 时,它抱怨找不到camelContext.xml
文件。
我以正确的方式接近这个吗?
谢谢。