如何将SpringSource dm服务器集成到另一个基于OSGi的应用服务器中?

时间:2020-03-06 15:00:43  来源:igfitidea点击:

我真的很想使用SpringSource dm Server,但我们的客户要求我们在其应用程序服务器(Websphere)上运行我们的应用程序。有没有一种方法可以将SpringSource dm Server与其他应用程序服务器集成?至少dm Server建立在OSGi上,许多其他应用程序服务器(包括Websphere)也都基于OSGi。是否可以将SpringSource dm Server作为Websphere组件运行?

解决方案

Spring DM部署在Knoplerfish OSGi实现上。

Websphere部署在Equinox OSGi实现上。

因此,问题就变成了两者可以互换吗?他们都支持R4,所以我会说,是的。

下一个问题将是检查依赖性,尤其是在诸如HttpServices之类的方面。

我会说这可以,但是我认为最后的证明是尝试部署它。最简单的方法是将捆绑软件放入Websphere部署中。我们将需要捆绑包以及我们正在使用的任何弹簧捆绑包。

我认为情况并非如此...

请参见以下链接:http://apsblog.burtongroup.com/2008/11/websphere-7-osgi.html

但另一方面,趋势似乎很明显……有时可以在Java EE应用程序服务器上部署基于OSGI的应用程序

SpringSource dm Server基于Eclipse Equinox OSGi框架(不应与dm Server中包含的Spring DM技术混淆,后者可以在Equinox,Apache Felix和Knopflerfish上运行)。

但是,将dm Server嵌入到基于Equinox的另一个应用程序服务器(例如WebSphere Application Server)中将是一项艰巨的工作。必须使两种产品都使用当前不使用的相同版本的Equinox,然后修改dm Server以支持在服务器中的嵌入(例如,与主机服务器的应用程序调用机制,线程池和类加载集成)方案)。

如果我们认为此支持很重要,请对dm Server提出要求(要求简单注册)。

我对这个话题也很感兴趣。解决此问题的另一种方法是,我们希望将应用程序同时部署在Spring dm服务器和传统应用程序服务器(Websphere,weblogic,JBoss等)中。

OSGi容器可嵌入非OSGi应用程序内部,因此从理论上讲,可以将应用程序既部署到Spring dm服务器,又将同一app + OSGi容器部署到传统应用程序服务器。

现在,像往常一样,细节在其中,其中包括Web开发以及在外部应用程序服务器和OSGi容器之间桥接Servlet的主题。