Reputation: 745
I have a MobileFirst application trying to send push with a production APNS certificate.
I get this exception when push is submitted :
INFO: Failed to send message Message(Id=2; Token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX; Payload={"aps":{"alert":{"body":"Blah blah blah","action-loc-key":null},"sound":"","badge":1},"payload":"{\"alias\":\"News_fr\",\"custom\":\"data\"}"})... trying again after delay
java.net.SocketException: Connection closed by remote host
at sun.security.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1510)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
at java.io.OutputStream.write(OutputStream.java:75)
at com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:240)
at com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:230)
at com.notnoop.apns.internal.ApnsPooledConnection$2.run(ApnsPooledConnection.java:47)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
The server is running an Oracle JRE 1.7 and Tomcat 7 on Debian GNU/Linux 7 (wheezy). The MobileFirst version is 6.3.0.
It worked well with the development certificate.
I developed a standalone Java application (using JavAPNS instead of Notnoop) to reproduce the problem on my local environment with the same certificate and it worked with Java 1.6 but not higher.
Upvotes: 2
Views: 736
Reputation: 17822
For future reference, I have also seen this exact error occur when apns-certificate-sandbox.p12
was outdated or incorrectly generated. Following these instructions to regenerate that file (and redeploying the .wlapp
) resolved the issue.
Upvotes: 1
Reputation: 44526
A PMR (support ticket) was opened for this issue, and it was decided by the customer to downgrade the installed Java to Oracle Java 1.6 after which sending push notifications successfully resumed.
Upvotes: 1