2012-07-14 2 views
0

http://developer.android.com/guide/google/gcm/demo.html#server-setup의 자습서를 따르고 있습니다. 나는 웹 서버를 사용한다. (웹상의 무료 JSP 서버, localhost가 아니다.) 다 괜찮 았어, 내 장치가 성공적으로 서버에 등록 된 페이지에 1 개의 장치가 등록되었다고 말했습니다. 그러나 보내기 메시지를 클릭하면 아래 오류가 나타납니다. 내가 사용하는 서버가 (서버를 전환 할 수 있도록) 일부 방법을 차단했거나 Google이 제공 한 예제 코드가 허점을 가지고 있는지 궁금합니다. tks.android GCM 예, 서버에서 메시지를 전송할 때 오류가 발생했습니다.

죄송 예외 보고서는 긴하다 (그러나 필요한 것을 모르는) 앱에 올바른 API 키를 붙여 넣은 확인

Exception report 

message 

description The server encountered an internal error() that prevented it from fulfilling this request. 

exception 

java.security.AccessControlException: access denied (java.net.SocketPermission android.googleapis.com:443 connect,resolve) 
    java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) 
    java.security.AccessController.checkPermission(AccessController.java:546) 
    java.lang.SecurityManager.checkPermission(SecurityManager.java:532) 
    java.lang.SecurityManager.checkConnect(SecurityManager.java:1034) 
    sun.net.www.http.HttpClient.openServer(HttpClient.java:527) 
    sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:271) 
    sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:328) 
    sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172) 
    sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:793) 
    sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158) 
    sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:896) 
    sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:230) 
    com.google.android.gcm.server.Sender.post(Sender.java:468) 
    com.google.android.gcm.server.Sender.post(Sender.java:447) 
    com.google.android.gcm.server.Sender.sendNoRetry(Sender.java:170) 
    com.google.android.gcm.server.Sender.send(Sender.java:121) 
    com.google.android.gcm.demo.server.SendAllMessagesServlet.doPost(SendAllMessagesServlet.java:76) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
    sun.reflect.GeneratedMethodAccessor47.invoke(Unknown Source) 
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    java.lang.reflect.Method.invoke(Method.java:597) 
    org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:244) 
    java.security.AccessController.doPrivileged(Native Method) 
    javax.security.auth.Subject.doAsPrivileged(Subject.java:517) 
    org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:276) 
    org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162) 
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.23 logs. 

답변

0

합니다. "서버"API 키 대신 "브라우저"API 키를 사용해보십시오.

+0

예, 브라우저 API 키를 사용한 후에 만 ​​장치가 등록되었습니다. 그래서 원인이되지 않습니다 –

+0

Tomcat 오류 로그에서 전체 스택 추적을 가져와야 할 것입니다. –

+0

뭘보고 싶니? –

관련 문제