我是一个新手,这和阅读有关WABS,但希望清除的基本区别 - 我的意思是使用嵌入到Tomcat OSGi和制作WAR VS制作WAB?
什么时候应该考虑每个选项?
1)嵌入在tomcat中的OSGI
2)OSGI中的tomcat
3)使用WAB
当您被迫使用传统的JavaEE WAR部署模型时,嵌入在容器中的OSGi(不仅仅是Tomcat!)可能是唯一的选择,即IT部门操作容器并且您只能将WAR文件部署到它.这将在Web应用程序中引导整个OSGi框架,并允许在Web应用程序中进行模块化开发.然后,Web应用程序被组合为一组OSGi包.它还可用于将现有遗留Web应用程序迁移/转移到OSGi模块中.但是,这将具有挑战性.
我想将第二种方法(OSGi中的Tomcat)称为纯OSGi方法.Tomcat或任何其他Servlet容器(例如,Jetty)可以在OSGi框架中作为捆绑(或一组捆绑)部署.OSGi框架是容器.您不再完全分离Web应用程序了.可以相交.一些捆绑/模块可能实现Web功能,而其他捆绑/模块可能不实现 其他Web捆绑包可以重用核心功能(核心捆绑包).
第三个选项是OSGi中新规范的结果.基本上,它是一个带有OSGi包清单的Web应用程序.因此,整个Web应用程序可以作为单个OSGi包部署在任何具有WAB支持的框架上.从技术上讲,bundle可以作为Web应用程序部署到Servlet容器.但它可以访问BundleContext.这允许Web应用程序与在同一框架中运行的其他bundle或Web应用程序进行交互操作.
| 归档时间: |
|
| 查看次数: |
1911 次 |
| 最近记录: |