In the older 7.2.2 version of Pega, Bouncy Castle support for Weblogic 12.2.1 was added as a hotfix. Due to the nature of the changes, the hotfix requires some manual steps to ensure that the older jars are removed in order for functionality to work correctly. A couple of clients who are still on the 7.2.2 version experienced issues recently related to the HFIX-31757 being included as a dependent hotfix for more recent security hotfixes. (e.g. A22 hotfix advisory)
If your 7.2.2 hotfix package includes HFIX-31757 as a dependent hotfix, please review the following steps based on whether you are running on Weblogic or other application servers (Tomcat, Websphere, etc.)
For Weblogic:
1) Take Database Backup/table level (pr_engineclasses) backup
2) Commit all the previously uncommitted hotfixes (assuming already tested satisfactorily)
3) Install the hotfix package but don't commit the hotfixes.
4) Shut down the cluster.
5) Remove temp directory of Weblogic/Other container
For weblogic (sample path) opt/oracle/Oracle/Middleware/Oracle_Home/user_projects/domains/prpc1/servers/AdminServer/tmp/_WL_user/prpc_wls_jee4/852it7/public
6) Remove the old bouncy castle jars, using the following queries:
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcmail-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcpkix-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcprov-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcmail-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcpkix-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcprov-jdk15on-1.49.jar'
7) Restart one server
8)Verify that the server restarted without any bouncy castle related errors and the directory (sample) location jar:file:/opt/oracle/Oracle/Middleware/Oracle_Home/user_projects/domains/prpc1/servers/AdminServer/tmp/_WL_user/prpc_wls_jee4/852it7/public/extractedFiles/baseloader/java6
contains only the 1.54 version of bouncy castle jars i.e.1.49 versions should not be present.
for e.g. bcmail-kdj15on-1.54.jar ,bcpkix-jdk15on-1.54.jar and bcprov-jdk15on-1.54.jar
9) Confirm the behavior has been resolved
10) Start the rest of the cluster.
11) Commit the hotfixes, only after satisfactory completion of testing.
For other servers:
1) Take Database Backup/table level (pr_engineclasses) backup
2) Commit all the previously uncommitted hotfixes (assuming already tested satisfactorily)
3) Install the hotfix package but don't commit the hotfixes.
4) Shut down the cluster.
5) Remove the old bouncy castle jars, using the following queries:
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcmail-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcpkix-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzjar like 'base\java6\bcprov-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcmail-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcpkix-jdk15on-1.49.jar'
delete from <rules_schema>.pr_engineclasses where pzclass like 'bcprov-jdk15on-1.49.jar'
6) Restart one server
7) Confirm the behavior has been resolved
8) Start the rest of the cluster.
9) Commit the hotfixes, only after satisfactory completion of testing.