OSGi Web 容器对 dm Server 的意义

工程 | Rob Harrop | 2009 年 6 月 01 日 | ...

继我的 前一篇文章 之后,很多人都在询问转向 OSGi Web 容器对 dm Server 的影响。 最常见的问题是

  • 添加了什么?
  • 什么保持不变?
  • 什么发生了改变?
  • 如何保持更新?

我将分别解答这些问题。如果您有任何其他问题,请随时评论。

添加了什么?

与 Web 容器 RI 集成将使 dm Server 能够访问 OSGi Web 容器标准的所有功能。这包括处理 WAR 的标准模型、对 webbundle URL 方案的支持以及对 Web 容器扩展器的支持。

我正在探索 RI 的一些不错的增值功能,包括使用 ConfigAdmin 进行动态配置、用于检查已部署 Web 捆绑包的全面 MBean 接口以及用于监视生命周期事件的 EventAdmin 集成。所有这些功能都将添加到 dm Server 以及 RI 中。

什么保持不变?

您会很高兴地知道,您所学到的关于 dm Server 中 Web 应用程序的许多知识都保持不变。

使用 dm Server 部署器

除了支持 webbundle URL 之外,仍然可以使用 dm Server 部署器部署 WAR 文件。支持所有进入部署器的路径,包括拾取目录、部署器 MBean 和管理控制台。

使用 dm Server 部署器进行部署时,将从配置的存储库链中可用的捆绑包自动安装 WAR 文件依赖项。

WAR 部署模式

程序员指南中提到的所有 WAR 类型仍然存在 - 事实上,它们是 Web 容器标准的一部分。

系统包导入

即使此功能没有包含在标准中,使用 dm Server 部署的 WAR 也会自动导入所有配置的系统包。如果使用 webbundle URL 部署,您可以使用 URL 参数触发系统包导入。我希望该规范将在该领域包含一些标准行为

什么发生了改变?

我们的目标是在 dm Server 中保持大多数功能不变,但转向 Web 容器确实需要进行一些更改。与此同时,我们正在利用代码重构来集成从用户那里看到的一些更受欢迎的功能请求。

Web 模块正在被删除

最大的变化是删除 web 模块。我们更喜欢支持基于标准的方法,现在我们已经能够与 OSGi Alliance 合作创建基于标准的 OSGi 上 Web 应用程序的方法,因此我们正在转向它,而不是 dm Server 特定的解决方案。

对于今天正在使用 Web 模块的你们,我真的很有兴趣听听您最喜欢的功能是什么,并且会很遗憾失去这些功能。没有理由不能在 Web 容器 Web 捆绑包之上重做重要的 Web 模块功能。

切换到 Tomcat 配置格式

在 1.0.x 系列中,嵌入在 dm Server 中的 Tomcat 实例使用 JSON 配置文件格式进行配置。我们的许多用户都要求我们切换回使用 Tomcat 的 XML 格式。Web 容器 RI 使用标准的 Tomcat 格式,当 dm Server 切换到 Web 容器时,它也将切换配置文件格式。

我仍在最终确定配置文件的确切存储位置。我希望能够使用可以从 ConfigAdmin 填充的占位符来参数化 Tomcat 配置文件

如何保持更新?

了解最新进展的最简单方法是跟踪 Web 容器和 dm Server Web 的 SVN 存储库。您可以通过以下 URL 访问这些存储库

我将定期在此处发布博客,您可以在 Twitter 上关注 #osgi (http://search.twitter.com/search?q=%23osgi) 和 #dmserver (http://search.twitter.com/search?q=%23dmserver) 的进度。

获取 Spring 新闻资讯

订阅 Spring 新闻资讯,与我们保持联系

订阅

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获得支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看所有