我是一个新手,这和阅读有关WABS,但希望清除的基本区别 - 我的意思是使用嵌入到Tomcat OSGi和制作WAR VS制作WAB?
一个当应该考虑每个选项?
1)OSGI嵌入的Tomcat
2)在OSGI的Tomcat
3)使用WAB
我是一个新手,这和阅读有关WABS,但希望清除的基本区别 - 我的意思是使用嵌入到Tomcat OSGi和制作WAR VS制作WAB?
一个当应该考虑每个选项?
1)OSGI嵌入的Tomcat
2)在OSGI的Tomcat
3)使用WAB
OSGi的嵌入容器(不仅是Tomcat的!)可能是当你被迫传统的JavaEE WAR部署模式,即IT部门工作的容器,并且只能deloy WAR文件,它是唯一的选择。 这引导了Web应用程序内的整个OSGi框架,并允许在Web应用程序中的模块化发展。 然后,Web应用程序是由作为一组的OSGi包。 它也可以用于迁移/转移现有遗留web应用到OSGi的模块。 然而,这将是具有挑战性的。
我想打电话第二种方法(在Tomcat的OSGi)作为一个纯粹的OSGi的方法。 Tomcat或任何其他Servlet容器(例如,码头)可被部署为在OSGi框架中束(或一组束)。 OSGi框架是容器。 你没有一个Web应用程序的完全分离了。 该可以相交。 有些包/模块可以实现网络功能和其他人可能不会。 核心功能(芯束)可以通过其他网络束被重用。
第三个选项是在OSGi的新规范工作的结果。 基本上,这是用OSGI包的Web应用程序。 因此,整个网络应用程序可以被部署为与WAB支持任何框架的单个OSGi包。 从技术上讲,该束可以被部署为web应用到Servlet容器。 但它得到访问的BundleContext。 这允许web应用程序与其他束或在同一个框架上运行的Web应用程序-操作间。