首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非osgi与osgi包的交互

非osgi与osgi包的交互
EN

Stack Overflow用户
提问于 2012-07-23 18:29:52
回答 2查看 1.2K关注 0票数 3

我正在为我的web应用程序使用struts2,我希望将osgi架构用于服务和dao层。现在,我不想将我的struts2操作包装为osgi,而是希望将服务和dao层打包为bundle。现在谁能告诉我我的非osgi操作如何使用osgi捆绑包(服务和道层)。我想在web容器中部署我的osgi应用程序,那么在这种情况下,web容器将如何与struts2容器(部署我的服务和dao的位置)交互。请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2012-07-23 21:13:35

你需要在你的web容器和你的OSGi环境之间建立一个所谓的“桥梁”。Felix和Equinox都有这种能力,但对我来说,Felix实现的效果要好得多。

你基本上想要做的是:

  • 在启动ServletContext时向ServletContext
  • Starting OSGi添加上下文侦听器,当ServletContext通过将ServletContext注册为服务将其停止到OSGi上下文时
  • 通过将OSGi框架对象注册为属性将其存储在ServletContext中。

因此,要从OSGi访问web上下文:检索ServletContext服务,并从那里开始。

要从webcontext访问OSGi :从ServletContext属性检索OSGi框架并从那里开始。

检查一下Felix Documentation,我在GitHub上也做了一个例子

票数 5
EN

Stack Overflow用户

发布于 2012-07-23 21:15:34

这肯定是行不通的。为什么您认为将应用程序的一半迁移到OSGi上应该是个好主意?要么将其全部移动,要么不移动。

您可以在war文件中部署struts层,并从中访问OSGi服务。我认为这在处女座和Apache Karaf是可能的。这意味着加强与OSGi结构的战争。例如,在Karaf中,您可以使用wab文件,它是一个带有Manifest的war文件。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11610764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档