基于嵌入HttpService在. _OSGiApache KarafTomcat
我们应用程序的某些部分是非OSGi基于的,直接通过我们的代码响应请求WAR,而某些部分通过Felix Servlet Bridge调用Felix OSGi容器中的 servlet 来响应请求。我们也在使用Felix's whiteboard bundle 来实现 servlet 的自动注册。
我们也在使用 中的ActiveMQ功能Karaf,它包含Pax Web在它的控制台中。结果是我们最终得到一个HttpService来自 的Felix Servlet Bridge,它与嵌入应用程序服务器集成,另一个HttpService来自,它在不同的端口上Pax Web运行它自己的服务器。Jetty
所以,问题是一些初创公司的白板包连接到了Pax Web HttpService,因此将我们的 servlet 暴露在错误的位置。我们还没有找到一种方法来配置白板包以某种方式请求所需的HttpServicefrom Servlet Bridge,并且由于所有涉及的包都是第三方的东西,我们也希望避免更改它们的Java代码......
解决这个问题的最佳方法是什么?
(为了可维护性,我们更喜欢配置而不是代码,并且我们希望将ActiveMQ控制台保持在自己的端口上)