"java.security.AccessControlException: access denied" while connecting google CCS

Hello,

I have followed the tutorial at the link https://developer.android.com/google/gcm/ccs.html#implement.

I am using Smack 4.0.4.

I have created an endpoint for the method “connect” and deployed this class on google app engine.

However when I call “connect” from my android mobile client app, i get exception as shown below.

What does this exception mean?

Any helpful comment is appreciated!

WARNING: Cannot connect to CCS server.

java.security.AccessControlException: access denied (“java.lang.RuntimePermission” “modifyThreadGroup”)

at java.security.AccessControlContext.checkPermission(AccessControlContext.java:37 2)

at java.security.AccessController.checkPermission(AccessController.java:559)

at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)

at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManage r.checkPermission(DevAppServerFactory.java:429)

at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManage r.checkAccess(DevAppServerFactory.java:454)

at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:315)

at java.lang.Thread.init(Thread.java:389)

at java.lang.Thread.init(Thread.java:349)

at java.lang.Thread.(Thread.java:444)

at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter$1.(XMPPTCPConne ction.java:1240)

at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter.init(XMPPTCPConnectio n.java:1240)

at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketWriter.(XMPPTCPConnect ion.java:1227)

at org.jivesoftware.smack.tcp.XMPPTCPConnection.initConnection(XMPPTCPConnection.j ava:484)

at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPC onnection.java:463)

at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection. java:831)

at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.ja va:298)

at com.example.mymodule.XMPPServer.SmackCcsClientEndpoint.connect(SmackCcsClientEn dpoint.java:276)

at com.example.mymodule.XMPPServer.SmackCcsClientEndpoint.getInstance(SmackCcsClie ntEndpoint.java:73)

at com.example.mymodule.connectionServlet.CcsServlet.init(CcsServlet.java:24)

at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)

at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1166)

at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.ja va:74)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(Response RewriterFilter.java:127)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(Header VerificationFilter.java:34)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter .java:63)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Transacti onCleanupFilter.java:43)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilt er.java:125)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1157)

at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectReques t(DevAppServerModulesFilter.java:366)

at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModule Request(DevAppServerModulesFilter.java:349)

at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAp pServerModulesFilter.java:116)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va: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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppE ngineWebAppContext.java:98)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.ha ndle(JettyContainerService.java:490)

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.content(HttpConnection.java:938 )

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)

at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)