应用程序部署后在 websphere 7 中重置设置

settings reset in webpshere 7 after application deployment

我正在使用 Websphere 7 部署 Web 项目。在 Webpshere 的企业应用程序级别,我正在做一些与 cookie 相关的设置。我正在更改 cookie 的名称并将其标记为安全。我点击保存,重新启动应用程序,一切正常,更改已应用。

问题是在我进行另一次部署后,设置被重置。我知道这些设置保存在 deployment.xml 文件中,当我在服务器上访问它时可以看到我所做的更改(它的位置在应用程序的 ear 文件夹中),但是我不明白这在哪里最初正在设置文件。我没有在应用程序代码的任何地方找到它。

如何在部署后使用默认设置覆盖它? 如何在部署后使设置持久化?

谢谢

当您卸载应用程序时,在 Websphere 上的应用程序 EAR 级别完成的任何后端设置都会被冲走。

如果您检查 deployment.xml 所在的文件夹,它会类似于 AppServer/profile/profileXYZ/config/cells/application/EAR.ear/deployment/deployment.xml

重新部署时,首先取消部署较早的应用程序,然后删除上面的应用程序文件夹以及您修改的 deployment.xml。

在后续部署中,会创建一个新的 deployment.xml。它引用您的配置(在 application.xml、ibm-application-bnd.xml 等中完成)并创建此文件。如果您必须为您的 WAR 更改诸如 class 加载器策略之类的东西,遗憾的是,除了在每次重新部署后手动执行之外别无他法。

您要部署包含 deployment.xml 的增强型 EAR 吗? What is the difference between an EAR file and a "WebSphere Enhanced EAR"?

如果 EAR 文件包含 deployment.xml,那么当您部署它时,修改后的 deployment.xml 将被 EAR 中的文件覆盖。