使用此过程可以创建新的临时区域,在其中原始 WAR 文件将与新 WAR 文件进行合并。
此操作可比较每个 WAR 文件的清单,然后显示:
原始 WAR 文件中自定义的文件
新 WAR 文件中更新的文件
两个 WAR 文件版本间添加或删除的文件
ssopatch 然后会将相应的文件复制到一个临时目录中,您必须先在该目录中添加任何自定义内容,然后再创建和部署新修补的 WAR。
尽管 ssopatch 不会修改原始 opensso.war 文件,但建议您备份此文件,以供您在需要回退修补的 opensso.war 文件时使用。
运行 ssopatch 以创建临时区域。例如:
./ssopatch -o /zip-root/opensso/deployable-war/opensso.war -c /u1/opensso/deployable-war/opensso.war --override -s /tmp/staging Generating Manifest for: /zip-root/opensso/deployable-war/opensso.war Original manifest: Enterprise 8.0 Build 6(200810311055) New manifest: Enterprise 8.0 Update 2 Build 6.1(200904300525) Versions are compatible Generating Manifest for: /u1/opensso/deployable-war/opensso.war Comparing manifest of /zip-root/opensso/deployable-war/opensso.war (generated-200905051031) against /u1/opensso/deployable-war/opensso.war (generated-200905051032) File was customized in original, but not found in new war. Staging area using original war version (samples/saml2/sae/header.jsp) File was customized in original, but not found in new war. Staging area using original war version (WEB-INF/template/opends/config/upgrade/config.ldif.4517) File was customized in original, but not found in new war. Staging area using original war version (WEB-INF/template/opends/config/upgrade/schema.ldif.4517) Differences: 1813 Customizations: 0 |
在此示例中,/tmp/staging 是 ssopatch 复制文件的临时区域。
使用上一步骤的结果,根据需要更新临时区域中的文件。
使用下表确定在生成新修补的 WAR 文件前您可能需要对每个文件采取的操作。
ssopatch 结果 |
说明和所需操作 |
---|---|
File not in original war filename |
指示的文件未存在于原始 WAR 文件中,但存在于最新版本的 WAR 文件中。 操作:无 |
File updated in new war filename |
指示的文件存在于原始 WAR 文件和新 WAR 文件中,并且已在最新版本的 WAR 文件中进行了更新。在原始 WAR 文件中未进行任何自定义。 操作:无 |
File customized filename |
指示的文件存在于两个 WAR 文件中,并且已在原始版本的 WAR 文件中进行了自定义,但未在最新版本的 WAR 文件中进行更新。 操作:无 |
May require manual customization filename |
文件存在于两个 WAR 文件中,并且已在原始版本的 WAR 文件中进行了自定义,在最新版本的 WAR 文件中进行了更新。 操作:如果需要文件中的自定义内容,您必须手动将其添加到临时目录中的新更新的文件中。 |
File was customized in original, but not found in new war |
文件存在于原始 WAR 文件中,但未在新的 WAR 中。 操作:无 |
后续步骤
基于临时区域中的文件创建新 OpenSSO WAR 文件。例如:
cd /tmp/staging jar cvf /patched/opensso.war * |
其中,/patched/opensso.war 是新修补的 OpenSSO WAR 文件
使用原始的部署 URI,将 /patched/opensso.war 文件重新部署到 Web 容器。例如,/opensso
OpenSSO 配置更改。新 OpenSSO WAR 文件可能包含未存在于原始 WAR 文件中的配置更改。将单独为每个修补程序记录任何配置更改(如果有)。有关任何配置更改的详细信息,请查看修补程序文档和《Sun OpenSSO Enterprise 8.0 发行说明》。(即使在新 WAR 文件中没有配置更改,OpenSSO 清单文件中的版本字符串也会更改。)
如果需要回退修补的版本,请取消部署修补的 WAR 文件,然后重新部署原始 WAR 文件。