I got this error when my server try to push a notification to a specific device based on device token and ck.pem (combination between .pem file, cert and key).
As stated here java-apns is expecting the .p12 private key, not the .pem file.
The instructions for creating a .p12 file on a mac are in the first link, but if you're using the openssl tool on linux you can create it with:
openssl pkcs12 -export -inkey mykey.key -in mykey.pem -out mykey.p12
I just found the answer. When I try to generate a P12 key, I need to select both, a private key and certificate in keychain access.