Support Article
Configuring the Push Notification on iOS
SA-30673
Summary
Imported the p12 certificate to enable the push notification on iOS, after the certificate configuration. While doing the connectivity to APN service using the OOTB functionality ''SendNotificationToIOS'', which is used at step 14 of ''PushNotificationForToken" and getting the below exceptions
com.notnoop.exceptions.InvalidSSLConfig: com.notnoop.exceptions.InvalidSSLConfig: java.security.NoSuchAlgorithmException: sunx509 KeyManagerFactory not available
Error Messages
ERROR HN26RU - Exception
com.notnoop.exceptions.InvalidSSLConfig: com.notnoop.exceptions.InvalidSSLConfig: java.security.NoSuchAlgorithmException: sunx509 KeyManagerFactory not available
at com.notnoop.apns.internal.Utilities.newSSLContext(Utilities.java:88)
at com.notnoop.apns.ApnsServiceBuilder.withCert(ApnsServiceBuilder.java:167)
at com.pega.push.notification.message.sender.APNSPushSender.buildApnsService(APNSPushSender.java:84)
at com.pega.push.notification.service.sender.impl.PushSenderServiceImpl.createConnection(PushSenderServiceImpl.java:54)
Steps to Reproduce
- Launch Pega Marketing portal.
- Configuration > Settings > Channel > Push notification.
- create an Application and APP variant for iOS and import the p12 certificate.
- provide the push token and clik test button.
Root Cause
In case of ML 9 with Websphere there is a bug in 3rd party library apns-0.2.3 that causes the following error: java.security.NoSuchAlgorithmException: sunx509 KeyManagerFactory not available. This library needs to be replaced with newer version, e.g. apns-1.0.0.Beta6.
Resolution
Apply HFix-30239
After the installation follow the below steps:
1. Stop the server and run the following query in the problematic environment:
select pzcodeset from ${dbschema}.pr_engineclasses where pzjar like '%apns-0.2.3.jar%';
update ${dbschema}.pr_engineclasses set pzcodeset='pega-enginecodenouse' where pzjar like '%apns-0.2.3.jar%';
commit;
Replace ${dbschema} with the actual PegaRules schema name in respective environment.
2. Server needs to be restarted after running the above query and installing the new jar file which is apns-1.0.0.Beta6.jar.
Published November 24, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.