【问题标题】:Integrating Equinox OSGi into Apache Tomcat web app将 Equinox OSGi 集成到 Apache Tomcat Web 应用程序中
【发布时间】:2011-04-23 01:13:47
【问题描述】:

是否可以将 osgi-equinox 引入现有的 java Apache Tomcat 项目? 据我了解,OSGI 必须在某种“容器”内运行。我将如何整合它?

我还使用Jersey 获取 RESTful 资源。

【问题讨论】:

    标签: java osgi equinox


    【解决方案1】:

    你可能想看看这个问题:OSGI runtime inside traditional Java EE server

    在这个桥接模型中,安装了一个特殊的 servlet,Tomcat 调用这个 servlet 来处理请求。 OSGi 运行时是从这个 servlet 中产生的,但 OSGi 运行时本身(例如 equinox)与 HTTP 之类的东西无关。还安装了一个 OSGi HTTP 服务包,您需要针对此 OSGi HTTP 服务注册您的 Web 应用程序(servlet、jsp...)以处理传入的请求。因此,并不是说有一个单独的“Web 服务器”可以在自己的端口上侦听并在 Tomcat 外部自行管理 HTTP。您的里程可能会有所不同,但开销基本上仅限于 OSGi HTTP 服务在将请求从 Tomcat 连接器转发到您的 servlet 时可能添加的任何内容。

    如果您无法更改现有部署模型,则需要此桥接模型。从长远来看,更好的模型是首先拥有 OSGi 运行时,然后将 Tomcat(或任何其他兼容 OSGi 的容器)作为捆绑包插入 OSGi 运行时。

    【讨论】:

    • 我明白了,这很有趣。所以你的意思是另一种方式是将OSGI作为它自己的“网络服务器”运行?但是 osgi 的服务器性能与 Apache 相比如何?
    • 是否可以在 OSGi 中使用 Jersey 之类的东西,它检查带注释的类并将请求转发到给定的 url 到适当的类?
    • 我不能说,因为我没有玩过 Jersey 很多,但是网页搜索 jersey + osgi 似乎会弹出很多内容。
    猜你喜欢
    • 2017-01-27
    • 1970-01-01
    • 2020-12-23
    • 2015-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 2013-04-14
    相关资源
    最近更新 更多