My basic DWR code that works fine on tomcat doesn't work in GAE. According to http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine, dwr.3.0.0.RC1.jar is supported by GAE.
Any help is appreciated. Thank you The error I'm getting is runserver: [java] 2011-06-06 15:18:19.144 java[1170:903] [Java CocoaComponent compatibility mode]: Enabled [java] 2011-06-06 15:18:19.146 java[1170:903] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000 [java] Jun 6, 2011 10:18:20 PM com.google.apphosting.utils.jetty.JettyLogger info [java] INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger [java] Jun 6, 2011 10:18:20 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml [java] INFO: Successfully processed /Users/mbustany/parents- portal/prototype/mo/geolocation-appengine/build/WEB-INF/appengine- web.xml [java] Jun 6, 2011 10:18:20 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml [java] INFO: Successfully processed /Users/mbustany/parents- portal/prototype/mo/geolocation-appengine/build/WEB-INF/web.xml [java] Jun 6, 2011 10:18:20 PM com.google.apphosting.utils.jetty.JettyLogger info [java] INFO: jetty-6.1.x [java] Jun 6, 2011 10:18:20 PM com.google.apphosting.utils.jetty.JettyLogger info [java] INFO: Started SelectChannelConnector@localhost:8080 [java] Jun 6, 2011 10:18:20 PM com.google.appengine.tools.development.DevAppServerImpl start [java] INFO: The server is running at http://localhost:8080/ [java] Jun 6, 2011 10:18:32 PM org.directwebremoting.impl.StartupUtil logStartup [java] INFO: Starting: DwrServlet v3.0.0.116.rc1 on Google App Engine Development/1.5.0 / JDK 1.6.0_24 from Apple Inc. at [java] Jun 6, 2011 10:18:33 PM org.directwebremoting.impl.DefaultContainer invoke [java] SEVERE: - Exception during auto-wire: [java] java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at java.security.AccessControlContext.checkPermission(AccessControlContext.java: 374) [java] at java.security.AccessController.checkPermission(AccessController.java: 546) [java] at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkAccess(DevAppServerFactory.java:191) [java] at java.lang.ThreadGroup.checkAccess(ThreadGroup.java: 299) [java] at java.lang.Thread.init(Thread.java:336) [java] at java.lang.Thread.<init>(Thread.java:626) [java] at java.util.concurrent.Executors $DefaultThreadFactory.newThread(Executors.java:542) [java] at java.util.concurrent.ThreadPoolExecutor.addThread(ThreadPoolExecutor.java: 672) [java] at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java: 697) [java] at java.util.concurrent.ThreadPoolExecutor.prestartCoreThread(ThreadPoolExecutor.java: 1381) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java: 222) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.scheduleWithFixedDelay(ScheduledThreadPoolExecutor.java: 443) [java] at org.directwebremoting.impl.PurgingDownloadManager.setScheduledThreadPoolExecutor(PurgingDownloadManager.java: 71) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime.java: 100) [java] at org.directwebremoting.impl.DefaultContainer.invoke(DefaultContainer.java: 282) [java] at org.directwebremoting.impl.DefaultContainer.initializeBean(DefaultContainer.java: 260) [java] at org.directwebremoting.impl.DefaultContainer.setupFinished(DefaultContainer.java: 177) [java] at org.directwebremoting.impl.StartupUtil.setupDefaultContainer(StartupUtil.java: 264) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 188) [java] at org.directwebremoting.servlet.DwrServlet.createContainer(DwrServlet.java: 97) [java] at org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:64) [java] at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java: 440) [java] at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java: 339) [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1166) [java] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java: 35) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 58) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 122) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java: 94) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 388) [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 765) [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) [java] at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:351) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at org.mortbay.jetty.Server.handle(Server.java:326) [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) [java] at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:923) [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 409) [java] at org.mortbay.thread.QueuedThreadPool $PoolThread.run(QueuedThreadPool.java:582) [java] Jun 6, 2011 10:18:33 PM org.directwebremoting.servlet.DwrServlet init [java] SEVERE: init failed [java] org.directwebremoting.extend.ContainerConfigurationException: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 193) [java] at org.directwebremoting.servlet.DwrServlet.createContainer(DwrServlet.java: 97) [java] at org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:64) [java] at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java: 440) [java] at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java: 339) [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1166) [java] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java: 35) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 58) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 122) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java: 94) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 388) [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 765) [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) [java] at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:351) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at org.mortbay.jetty.Server.handle(Server.java:326) [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) [java] at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:923) [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 409) [java] at org.mortbay.thread.QueuedThreadPool $PoolThread.run(QueuedThreadPool.java:582) [java] Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at java.security.AccessControlContext.checkPermission(AccessControlContext.java: 374) [java] at java.security.AccessController.checkPermission(AccessController.java: 546) [java] at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkAccess(DevAppServerFactory.java:191) [java] at java.lang.ThreadGroup.checkAccess(ThreadGroup.java: 299) [java] at java.lang.Thread.init(Thread.java:336) [java] at java.lang.Thread.<init>(Thread.java:626) [java] at java.util.concurrent.Executors $DefaultThreadFactory.newThread(Executors.java:542) [java] at java.util.concurrent.ThreadPoolExecutor.addThread(ThreadPoolExecutor.java: 672) [java] at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java: 697) [java] at java.util.concurrent.ThreadPoolExecutor.prestartCoreThread(ThreadPoolExecutor.java: 1381) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java: 222) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.scheduleWithFixedDelay(ScheduledThreadPoolExecutor.java: 443) [java] at org.directwebremoting.impl.DefaultScriptSessionManager.afterContainerSetup(DefaultScriptSessionManager.java: 70) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 55) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 39) [java] at org.directwebremoting.impl.DefaultContainer.setupFinished(DefaultContainer.java: 180) [java] at org.directwebremoting.impl.StartupUtil.setupDefaultContainer(StartupUtil.java: 264) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 188) [java] ... 33 more [java] Jun 6, 2011 10:18:33 PM com.google.appengine.tools.development.ApiProxyLocalImpl log [java] SEVERE: javax.servlet.ServletContext log: unavailable [java] org.directwebremoting.extend.ContainerConfigurationException: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 193) [java] at org.directwebremoting.servlet.DwrServlet.createContainer(DwrServlet.java: 97) [java] at org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:64) [java] at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java: 440) [java] at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java: 339) [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1166) [java] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java: 35) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 58) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 122) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java: 94) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 388) [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 765) [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) [java] at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:351) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at org.mortbay.jetty.Server.handle(Server.java:326) [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) [java] at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:923) [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 409) [java] at org.mortbay.thread.QueuedThreadPool $PoolThread.run(QueuedThreadPool.java:582) [java] Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at java.security.AccessControlContext.checkPermission(AccessControlContext.java: 374) [java] at java.security.AccessController.checkPermission(AccessController.java: 546) [java] at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkAccess(DevAppServerFactory.java:191) [java] at java.lang.ThreadGroup.checkAccess(ThreadGroup.java: 299) [java] at java.lang.Thread.init(Thread.java:336) [java] at java.lang.Thread.<init>(Thread.java:626) [java] at java.util.concurrent.Executors $DefaultThreadFactory.newThread(Executors.java:542) [java] at java.util.concurrent.ThreadPoolExecutor.addThread(ThreadPoolExecutor.java: 672) [java] at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java: 697) [java] at java.util.concurrent.ThreadPoolExecutor.prestartCoreThread(ThreadPoolExecutor.java: 1381) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java: 222) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.scheduleWithFixedDelay(ScheduledThreadPoolExecutor.java: 443) [java] at org.directwebremoting.impl.DefaultScriptSessionManager.afterContainerSetup(DefaultScriptSessionManager.java: 70) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 55) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 39) [java] at org.directwebremoting.impl.DefaultContainer.setupFinished(DefaultContainer.java: 180) [java] at org.directwebremoting.impl.StartupUtil.setupDefaultContainer(StartupUtil.java: 264) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 188) [java] ... 33 more [java] [java] Jun 6, 2011 10:18:33 PM com.google.apphosting.utils.jetty.JettyLogger warn [java] WARNING: /dwr/engine.js [java] org.directwebremoting.extend.ContainerConfigurationException: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 193) [java] at org.directwebremoting.servlet.DwrServlet.createContainer(DwrServlet.java: 97) [java] at org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:64) [java] at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java: 440) [java] at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java: 339) [java] at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1166) [java] at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java: 35) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java: 58) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java: 43) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java: 122) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java: 94) [java] at org.mortbay.jetty.servlet.ServletHandler $CachedChain.doFilter(ServletHandler.java:1157) [java] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: 388) [java] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: 216) [java] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: 182) [java] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: 765) [java] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) [java] at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java: 70) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at com.google.appengine.tools.development.JettyContainerService $ApiProxyHandler.handle(JettyContainerService.java:351) [java] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: 152) [java] at org.mortbay.jetty.Server.handle(Server.java:326) [java] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: 542) [java] at org.mortbay.jetty.HttpConnection $RequestHandler.headerComplete(HttpConnection.java:923) [java] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) [java] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) [java] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) [java] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 409) [java] at org.mortbay.thread.QueuedThreadPool $PoolThread.run(QueuedThreadPool.java:582) [java] Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup) [java] at java.security.AccessControlContext.checkPermission(AccessControlContext.java: 374) [java] at java.security.AccessController.checkPermission(AccessController.java: 546) [java] at java.lang.SecurityManager.checkPermission(SecurityManager.java:532) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166) [java] at com.google.appengine.tools.development.DevAppServerFactory $CustomSecurityManager.checkAccess(DevAppServerFactory.java:191) [java] at java.lang.ThreadGroup.checkAccess(ThreadGroup.java: 299) [java] at java.lang.Thread.init(Thread.java:336) [java] at java.lang.Thread.<init>(Thread.java:626) [java] at java.util.concurrent.Executors $DefaultThreadFactory.newThread(Executors.java:542) [java] at java.util.concurrent.ThreadPoolExecutor.addThread(ThreadPoolExecutor.java: 672) [java] at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java: 697) [java] at java.util.concurrent.ThreadPoolExecutor.prestartCoreThread(ThreadPoolExecutor.java: 1381) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java: 222) [java] at java.util.concurrent.ScheduledThreadPoolExecutor.scheduleWithFixedDelay(ScheduledThreadPoolExecutor.java: 443) [java] at org.directwebremoting.impl.DefaultScriptSessionManager.afterContainerSetup(DefaultScriptSessionManager.java: 70) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 55) [java] at org.directwebremoting.impl.AbstractContainer.callInitializingBeans(AbstractContainer.java: 39) [java] at org.directwebremoting.impl.DefaultContainer.setupFinished(DefaultContainer.java: 180) [java] at org.directwebremoting.impl.StartupUtil.setupDefaultContainer(StartupUtil.java: 264) [java] at org.directwebremoting.impl.StartupUtil.createAndSetupDefaultContainer(StartupUtil.java: 188) [java] ... 33 more And the simple html file is: <!DOCTYPE html> <html lang="en"> <head> <title>Test</title> <meta http-equiv="Content-Type" content="text/html; charset=us- ascii"/> <script type='text/javascript' src='../dwr/engine.js'></ script> <script type='text/javascript' src='../dwr/util.js'></script> <script type='text/javascript' src='../dwr/interface/ IPAddress.js'></script> </head> <body> <p> <input value="Fetch" type="button" onclick="fetch()"/> <br/> Reply: <span id="ipaddress"></span> </p> <script lang="javascript"> function fetch() { IPAddress.getDate(function(data) { dwr.util.setValue("ipaddress", data); }); } </script> </body> </html> -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to google-appengine@googlegroups.com. To unsubscribe from this group, send email to google-appengine+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.