Apns推送磨合主功能正常工作,但磨合tomcat是否出错? 细节

Apns推送磨合主功能正常工作,但磨合tomcat是否出错? 细节,tomcat,jetty,apple-push-notifications,Tomcat,Jetty,Apple Push Notifications,我使用推送mdm消息,我在主功能中尝试推送消息是可以的但添加到jetty/tomcat web上下文中运行的spring mvm抛出javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败!帮帮我 使用springmvc方法 错误消息: 信息[Thread-19]ApnsConnectionImpl.run(170)|等待错误代码时出现异常 javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败 位于sun.secur

我使用推送mdm消息,我在主功能中尝试推送消息是可以的但添加到jetty/tomcat web上下文中运行的spring mvm抛出javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败!帮帮我

使用springmvc方法 错误消息: 信息[Thread-19]ApnsConnectionImpl.run(170)|等待错误代码时出现异常 javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:154) 位于sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1959) 位于sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1077) 位于sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312) 位于sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:882) 位于sun.security.ssl.AppInputStream.read(AppInputStream.java:102) 读取(InputStream.java:101) at>com.notnoop.apns.internal.ApnsConnectionImpl$1MonitoringRead.run(ApnsConnectionImpl.java:114) 调试[qtp297885139-65]ApnsConnectionImpl.socket(218)|与APNS建立了新连接 信息[Thread-20]ApnsConnectionImpl.run(170)|等待错误代码时出现异常 javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:154) 位于sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1959) 位于sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1077) 位于sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312) 位于sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:882) 位于sun.security.ssl.AppInputStream.read(AppInputStream.java:102) 读取(InputStream.java:101) at>com.notnoop.apns.internal.ApnsConnectionImpl$1MonitoringRead.run(ApnsConnectionImpl.java:114) 信息[qtp297885139-65]ApnsConnectionImpl.sendMessage(264)|未能发送消息>消息(Id=1;令牌=07BE34F5A71A;有效负载={“mdm”:“E101CB39-697A-4883-B303-67713DEE836E”}..>延迟后再试 javax.net.ssl.SSLHandshakeException:收到致命警报:握手失败 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 位于sun.security.ssl.Alerts.getSSLException(Alerts.java:154) 位于sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1959) 位于sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1077) 位于sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312) 位于sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:882) 位于sun.security.ssl.AppInputStream.read(AppInputStream.java:102) 读取(InputStream.java:101) at>com.notnoop.apns.internal.ApnsConnectionImpl$1MonitoringRead.run(ApnsConnectionImpl.java:114)


该错误可能是由于tomcat服务器无法访问p12文件造成的。要么你忘了把p12文件上传到你的服务器,要么它正在一个不同于你放进去的文件夹中寻找它

.getSystemResourceAsStream(“mdm_push.p12”),“123456”)


您可能应该在该调用中指定p12文件的路径。

信息不足。。。在web上下文中共享代码Thinks!getSystemResourceAsStream不起作用!但诺普的设计太糟糕了!流为“null”无错误提示!!!
ModelAttribute
RequestMapping("/deviceinfo")
public String pushCommand(HttpServletRequest request)
{
  String id = request.getParameter("id");
  Device device = deviceManager.get(new Long(id));
  log.debug(device);
  log.debug(device.getToken());
  ApnsService service = APNS.newService().withCert( ClassLoader
  .getSystemResourceAsStream("mdm_push.p12"),"123456")
  .withProductionDestination().build();
  String mdmPayload = APNS.newPayload().mdm(device.getToken().getPushMagic()).build();
  service.push(device.getToken().getToken(), mdmPayload);
  log.warn("mdmDeviceInfoCommand");
  return "device form";
}