Java APNS Error (Apple Push Notification Service)

I am trying to use Java APNS - an open source project - to send push notifications to the iPhone. I get an error message.

I used the .pem file as a certificate. If it was a .p12 file? I'm not sure what the difference is, but I read somewhere that there is a difference between these file formats.

Here is the code:

ApnsService service = APNS.newService() .withCert("gpk.pem", "XXXX") .withSandboxDestination() .build(); String payload = APNS.newPayload().alertBody("Can't be simpler than this!").build(); String token = "theTokenIsRemoveHere"; service.push(token, payload); 

And here is the error:

 Exception in thread "main" com.notnoop.exceptions.InvalidSSLConfig: java.io.IOException: toDerInputStream rejects tag type 45 at com.notnoop.apns.internal.Utilities.newSSLContext(Utilities.java:102) at com.notnoop.apns.ApnsServiceBuilder.withCert(ApnsServiceBuilder.java:161) at com.notnoop.apns.ApnsServiceBuilder.withCert(ApnsServiceBuilder.java:124) at com.geomobsters.cli.ApnsClient.main(ApnsClient.java:12) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) Caused by: java.io.IOException: toDerInputStream rejects tag type 45 at sun.security.util.DerValue.toDerInputStream(DerValue.java:806) at com.sun.net.ssl.internal.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1201) at java.security.KeyStore.load(KeyStore.java:1185) at com.notnoop.apns.internal.Utilities.newSSLContext(Utilities.java:87) ... 8 more 
+6
java apple-push-notifications
source share
1 answer

Java APNS expects a certificate as a .p12 file.

You must verify both the private key and the certificate in your keychain. then right-click-> "export 2 files" and export them you must specify a password for it, you must enter this password here

 .withCert("gpk.pem", "XXXX") 

how is your xxxx

luck

EDIT:

.P12 - PKCS # 12, contains certificates, private keys stored with a password .PEM is a Base64 encoded certificate blocked by „-----BEGIN CERTIFICATE-----" and „-----END CERTIFICATE-----"

+10
source share

All Articles