websphere应用服务器中文件夹'installedApps'和'applications'之间的区别是什么?

时间:2012-06-01 13:33:04

标签: websphere

通常,在我们创建配置文件DMGR和Node之后,我们在路径$ DMGRPROFILE_HOME / config / cells / $ cellName和路径$ NODEPROFILE_HOME /下的 installedApps 下有文件夹应用程序 。 所有要部署的应用程序都将放入 installedApps 文件夹中。我们还可以在上面的文件夹应用程序下看到相同的内容。所以我的问题是它们之间的区别是什么?除了 installedApps 之外,为什么websphere应用程序服务器会将此类应用程序放入文件夹应用程序? 更重要的是,例如,如果我需要更新一个名为web.xml的已部署的应用程序war文件,我是否必须在上面的两个路径下更新文件?

提前致谢

1 个答案:

答案 0 :(得分:7)

Dmgr配置文件下的applications路径包含已在管理控制台中部署的文件。

节点配置文件下的installedApps路径包含这些文件,它们已经同步到每个节点。在大多数情况下,这也将在部署之后立即进行。

部署单个文件

最安全的做法是使用管理控制台部署单个文件,而不是在文件系统上就地编辑它:

enter image description here

缺点是您必须输入服务器部署文件名的整个路径。例如webapp.war/WEB-INF/classes/com/yourcompany/project/package1/YourClass.class

如果您有拼写错误,它会部署,但不会在您想要的地方部署,并且在您预期的更改未生效之前您可能不会注意到它。

直接编辑文件系统

也就是说,在文件系统上编辑速度更快,所以我们有时会这样做,特别是对于类似的JSP。为此,您需要在节点的installedApps目录下编辑副本。 (该位置由WebSphere变量APP_INSTALL_ROOT控制,默认为${USER_INSTALL_ROOT}/installedApps。)

的web.xml

然而,

web.xml是不同的。如果您在installedApps中对其进行修改,则更改将不会生效。相反,您需要在路径中编辑一个类似于:

的路径

$NODEPROFILE_HOME/config/cells/cellName/applications/earName.ear/deployments/applicationName/warName.war/WEB-INF

或者在$ DMGRPROFILE_HOME中执行,然后同步节点(通过syncNode.sh或通过管理控制台)。

无论哪种方式,您都需要重新启动企业应用程序。