OSGi在Application Server中访问Java EE

时间:2012-02-20 12:30:20

标签: java-ee osgi

我已经开始关注OSGi,并同意它是前进的方向,因为它只是根据捆绑规范打包你的东西,提供了很大的可扩展性。无论如何....我的要求是,目前我有我的Java运行时和一些使用JCA和JMS Server等Java EE服务的服务来处理jBoss,WebLogic,GlassFish和WebSphere等应用服务器中的请求。想要将我的服务作为OSGi包进行制作和部署....但是,无论如何我可以从我的OSGi容器中访问Java EE资源吗?否则我必须将所有内容(我的运行时,Web客户端等)包装为OSGi包,我希望避免这些包,原因如下;

  1. 这需要一段时间
  2. 我将放弃所有不可取的Java EE功能
  3. 似乎从头开始编写和测试所有内容。
  4. 我搜索了很多但找不到任何解决方案,关于这一点的所有帖子都至少3年了。有人可以引导我找到正确的方向,并指出我在这方面的一些最新进展。

    如果您需要更多信息,请与我们联系。

5 个答案:

答案 0 :(得分:1)

您可以嵌入OSGi并将Java EE资源作为服务发布到OSGi框架中。我写了一篇关于这个主题的博客文章可能有所帮助:http://njbartlett.name/2011/03/07/embedding-osgi.html

答案 1 :(得分:1)

如果您搜索“企业OSGi”,您可能会有更多的运气并获得更多想法。许多主要的应用服务器,包括WebSphere,Glassfish和JBoss,现在都支持OSGi和Java EE组件之间的集成。一种选择是使用JNDI桥,它允许使用JNDI查找OSGi服务。另一种是使用SCA将事物连接在一起。 Apache Aries的SPI-fly项目还允许您将META-INF /服务公开为OSGi服务。

答案 2 :(得分:1)

Enterprise OSGI spec旨在利用企业服务。阅读Enterprise OSGi in Action书。

答案 3 :(得分:0)

GlassFish服务器是使用OSGi构建的,现在支持OSGi和Java EE服务之间的良好集成。它公开API以作为OSGi服务访问Java EE服务,并且还支持所谓的混合应用程序包,您可以在其中无缝地在Java EE应用程序中使用OSGi服务。有关更多详细信息,请参阅此文档:

OSGi Development using GlassFish

答案 4 :(得分:0)

SpringSource dm Server或简称dm Server是SpringSource应用程序平台的运行时部分。它是一个基于OSGi的轻量级模块化运行时,为开发,部署和管理企业应用程序提供了完整的打包解决方案。通过利用多种最佳技术并对其进行改进,dm Server为开发和部署企业应用程序提供了引人注目的解决方案

您可以在spring page

获得更多信息