使用java-apns时,Google App引擎SSL套接字崩溃

时间:2013-06-19 08:55:23

标签: google-app-engine sockets ssl notifications push

我正在尝试使用java-apns从谷歌应用引擎发送推送通知。 我收到以下错误: java.lang.NoSuchMethodError:sun.security.ssl.SSLSocketImpl.needToSplitPayload()Z

我唯一能找到的是: http://code.google.com/p/googleappengine/issues/detail?id=9472

有谁知道这个问题? 谢谢。

完整堆栈跟踪是:

  

块引用

来自servlet的未捕获异常 org.apache.myfaces.view.facelets.el.ContextAwareELException:javax.el.E​​LException:java.lang.NoSuchMethodError:sun.security.ssl.SSLSocketImpl.needToSplitPayload()Z     在org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:106)     at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:68)     在javax.faces.component.UICommand.broadcast(UICommand.java:120)     在javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1041)     在javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:289)     在javax.faces.component.UIViewRoot._process(UIViewRoot.java:1415)     在javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:765)     在org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:38)     在org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)     在org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)     在javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)     在org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166)     at com.netinteractive.cegelec.global.CharsetFilter.doFilter(CharsetFilter.java:25)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在com.google.apphosting.utils.servlet.JdbcMySqlConnectionCleanupFilter.doFilter(JdbcMySqlConnectionCleanupFilter.java:57)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)     在org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)     在org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)     在org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)     在org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)     在com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:266)     在org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)     在org.mortbay.jetty.Server.handle(Server.java:326)     在org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)     at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923)     在com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)     在org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)     在com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:146)     在com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.run(JavaRuntime.java:439)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:483)     在com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:490)     在com.google.tracing.TraceContext.runInContext(TraceContext.java:777)     在com.google.tracing.TraceContext $ DoInTraceContext.runInContext(TraceContext.java:754)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:345)     在com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:337)     在com.google.tracing.TraceContext $ TraceContextRunnable.run(TraceContext.java:487)     在com.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run(ThreadGroupPool.java:251)     在java.lang.Thread.run(Thread.java:679) 引起:javax.el.E​​LException:java.lang.NoSuchMethodError:sun.security.ssl.SSLSocketImpl.needToSplitPayload()Z     在com.sun.el.parser.AstValue.invoke(AstValue.java:191)     at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)     at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:94)     ......还有45个 引起:java.lang.NoSuchMethodError:sun.security.ssl.SSLSocketImpl.needToSplitPayload()Z     at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:92)     在java.io.OutputStream.write(OutputStream.java:75)     at com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:161)     在com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:46)     在com.notnoop.apns.internal.AbstractApnsService.push(AbstractApnsService.java:52)     在com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:36)     at com.netinteractive.cegelec.gcm.IosMessageSender.sendMessage(IosMessageSender.java:34)     at com.netinteractive.cegelec.managedBean.AlertForm.saveAlert(AlertForm.java:45)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)     在java.lang.reflect.Method.invoke(Method.java:45)     在com.sun.el.parser.AstValue.invoke(AstValue.java:187)     at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)     at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:94)     at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:68)     在javax.faces.component.UICommand.broadcast(UICommand.java:120)     在javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1041)     在javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:289)     在javax.faces.component.UIViewRoot._process(UIViewRoot.java:1415)     在javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:765)     在org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:38)     在org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)     在org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)     在javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)     在org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166)     at com.netinteractive.cegelec.global.CharsetFilter.doFilter(CharsetFilter.java:25)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)     在org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)     在org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)     在org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)     在org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)     在org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)     在org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)     在org.mortbay.jetty.Server.handle(Server.java:326)     在org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)     at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923)     在org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)     在com.google.tracing.TraceContext $ TraceContextRunnable.runInContext(TraceContext.java:483)     在com.google.tracing ....(篇8723)

1 个答案:

答案 0 :(得分:0)

使用Google App Engine SDK 1.7.6时,我也遇到过这个问题。当我将sdk更新为Google App SDK 1.8.0时,它已得到解决。