2013-06-19 29 views
0

我正嘗試使用java-apns從Google應用引擎發送推送通知。 我得到以下錯誤: java.lang.NoSuchMethodError:sun.security.ssl.SSLSocketImpl.needToSplitPayload()z使用java-apns時,Google App引擎SSL套接字崩潰

,我能找到關於它的唯一的事情是這樣的: http://code.google.com/p/googleappengine/issues/detail?id=9472

有誰對這個問題有什麼瞭解? 謝謝。

完整的堆棧跟蹤是:

Blockquote

從servlet的 org.apache.myfaces.view.facelets.el.ContextAwareELException未捕獲的異常:javax.el.E​​LException:java.lang.NoSuchMethodError:陽光下。 security.ssl.SSLSocketImpl.needToSplitPayload()Z at org.apache.myfaces.view.facelets.el.ContextAwareTagMethodExpression.invoke(ContextAwareTagMethodExpression.java:106) at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl。 java:68) at javax.faces.component.UICommand.broadcast(UICommand.java:120) 在javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:1041) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:289) at 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) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189) 在org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortba y.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166) at com.netinteractive.cegelec.global.CharsetFilter.doFilter(CharsetFilter.java:25) at 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) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) at com.google.com.twhttp:在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) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle( SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org。 mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.apphosting.runtime.jetty.AppVersionHa ndlerMap.handle(AppVersionHandlerMap.java:266) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper。java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923) at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76) at 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) at com.google.t racing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:490) at com.google.tracing.TraceContext.runInContext(TraceContext.java:777) at 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) at com.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run(ThreadGroupPool.java:251) at java.lang.Thread.run(Thread.java:679 ) 引起:javax.el.E​​LException:java.lang.NoSuchMethodError:sun.secu rity.ssl.SSLSocketImpl.needToSplitPayload()在com.sun.el.parser.AstValue.invoke(AstValue.java:191) 在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 com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl。)上的java.io.OutputStream.write(OutputStream.java:75) 上的sun.security.ssl.AppOutputStream.write(AppOutputStream.java:92) 。 java:161) at 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) 在com.netinteractive.cegelec.gcm。 IosMessageSender.sendMessage(IosMessageSender.java:34) 在com.netinteractive.cegelec.managedBean.AlertForm.saveAlert(AlertForm.java:45) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本機方法) 在sun.reflect.NativeMethodAccessorImpl .invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:45) at com.sun.el .parser.AstValue.invoke(AstValue.java:187) at com.sun.el.MethodExpre (org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl。))中的ssionImpl.invoke(MethodExpressionImpl.java:297) 的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) at javax.faces.component.UIViewRoot._process(UIViewRoot.java:1415) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:765) at org.apache。 myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor。java:38) at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171) at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces。 webapp.FacesServlet.service(FacesServlet.java:189) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler。 java:1166) at com.netinteractive.cegelec.global.CharsetFilter.doFilter(CharsetFilter.java:25) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) at org。 mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletH $ CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org。 mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle( WebAppContext.java:418) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mort bay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java: 923) at com.google.tracing.TraceContext $ org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) $ TraceContextRunnable.runInContext(TraceContext.java:483) at com.google.tracing ... (長度8723)

回答

0

我在使用Google App Engine SDK 1.7.6時也遇到了這個問題。當我將sdk更新到Google App SDK 1.8.0時已解決。

+0

是的,這是解決方案。謝謝。 – hmitkov

+0

請投票選出答案。 –