为什么要为WebSphere上安装的应用程序创建.ear和.war文件夹?

为什么要为WebSphere上安装的应用程序创建.ear和.war文件夹?,websphere,war,ear,wsadmin,Websphere,War,Ear,Wsadmin,我正在使用wsadmin工具安装一个应用程序(.war文件),我正在使用option -installed.ear.destination[目标文件夹] 在目标文件夹中安装应用程序 但安装应用程序后,我的web内容的最终文件夹结构如下 [目标文件夹]/testapp.ear/testapp.war/[我的内容] 创建此.ear和.war文件夹的原因,以及如何安装应用程序,使[我的内容]显示在[目标文件夹]中?WebSphere application Server传统版仅运行ear文件。因此,当

我正在使用wsadmin工具安装一个应用程序(.war文件),我正在使用option

-installed.ear.destination[目标文件夹]

在目标文件夹中安装应用程序

但安装应用程序后,我的web内容的最终文件夹结构如下

[目标文件夹]/testapp.ear/testapp.war/[我的内容]


创建此.ear和.war文件夹的原因,以及如何安装应用程序,使[我的内容]显示在[目标文件夹]中?

WebSphere application Server传统版仅运行ear文件。因此,当您通过管理控制台或wsadmin安装.war文件时,它会将其包装在ear文件中,以便它可以在运行时对其进行处理。

WebSphere Application Server traditional仅运行ear文件。因此,当您通过管理控制台或wsadmin安装.war文件时,它会将其包装在ear文件中,以便在运行时对其进行处理。

这是IBM WebSphere application Server应用程序部署体系结构的一部分

作为应用程序部署的一部分,应用程序服务器将应用程序文件放置在便于运行应用程序的结构中。这意味着可以轻松访问所有模块,也意味着可以轻松访问web模块中的文件

对于EJB-JAR文件,文件结构中没有额外的分层:EJB-JAR文件的所有元素都可以通过Java提供的JAR/ZIP API进行访问。需要解包应用程序的每个EJBJAR文件,但不需要解包EJBJAR文件中的元素

对于WAR文件,WEB-INF/lib文件夹中还有一层JAR文件。访问这些web模块库JAR需要将JAR文件作为公开文件放置

此外,WAR文件的某些资源在文件集中公开,以便从未设置为处理JAR文件的代码区域轻松访问。最重要的是,JSP文件公开在磁盘上,因此JSP编译器可以轻松访问它们

最终结果是,部署的应用程序的文件扩展了应用程序结构的两层:扩展了EAR文件本身,扩展了EAR中的WAR文件。JAR类型文件(EJB JAR、应用程序库JAR、应用程序客户机JAR和简单实用程序JAR打包在EAR中,但不在应用程序库文件夹中)不会展开

有可能构建一个更复杂的API来访问嵌套的归档文件(JAR文件中的JAR文件,或者,或多或少相同,ZIP文件中的ZIP文件),它将应用程序的嵌套内容视为文件系统的扩展。这种策略有两个问题。嵌套存档必须根据需要扩展到临时位置,或者嵌套存档必须以非压缩格式存储在嵌套存档中。这两个步骤是必要的,因为ZIP文件格式不支持对存储在其他归档文件中的归档文件进行搜索,这些归档文件允许对嵌套归档文件使用压缩。由于执行了两个级别的压缩,因此可以在嵌套存档上搜索,而无需删除嵌套存档上的级别压缩


在存储嵌套归档文件时,可以设置工具以防止压缩,但通常不会这样做。而且,归档文件通常具有足够的规律性,默认的ZIP存储算法在存储嵌套归档文件时会自动使用压缩。最常见的情况是为具有两级压缩的部署提供嵌套存档。

这是IBM WebSphere application Server应用程序部署体系结构的一部分

作为应用程序部署的一部分,应用程序服务器将应用程序文件放置在便于运行应用程序的结构中。这意味着可以轻松访问所有模块,也意味着可以轻松访问web模块中的文件

对于EJB-JAR文件,文件结构中没有额外的分层:EJB-JAR文件的所有元素都可以通过Java提供的JAR/ZIP API进行访问。需要解包应用程序的每个EJBJAR文件,但不需要解包EJBJAR文件中的元素

对于WAR文件,WEB-INF/lib文件夹中还有一层JAR文件。访问这些web模块库JAR需要将JAR文件作为公开文件放置

此外,WAR文件的某些资源在文件集中公开,以便从未设置为处理JAR文件的代码区域轻松访问。最重要的是,JSP文件公开在磁盘上,因此JSP编译器可以轻松访问它们

最终结果是,部署的应用程序的文件扩展了应用程序结构的两层:扩展了EAR文件本身,扩展了EAR中的WAR文件。JAR类型文件(EJB JAR、应用程序库JAR、应用程序客户机JAR和简单实用程序JAR打包在EAR中,但不在应用程序库文件夹中)不会展开

有可能构建一个更复杂的API来访问嵌套的归档文件(JAR文件中的JAR文件,或者,或多或少相同,ZIP文件中的ZIP文件),它将应用程序的嵌套内容视为文件系统的扩展。这种策略有两个问题。嵌套存档必须根据需要扩展到临时位置,或者嵌套存档必须以非压缩格式存储在嵌套存档中。这两个步骤是必要的,因为ZIP文件格式不支持对存储在其他归档文件中的归档文件进行搜索,这些归档文件允许对嵌套归档文件使用压缩。由于执行了两个级别的压缩,因此可以在嵌套存档上搜索,而无需删除
Rename the target application to the target folder name.
Set the target folder name to the parent of the target folder.
Original target folder: /appsDir/appContent
Original application name: testapp.ear

Modified target folder: /appsDir
Modified application name: appContent.ear