In the htmlunit it's use java.net.URL,so you must check the port of the request url! It's a little limit in the GAE:
The URL must use the standard ports for HTTP (80) and HTTPS (443). The port is implied by the scheme, but may also be mentioned in the URL as long as the port is standard for the scheme (https://...:443/). An app cannot connect to an arbitrary port of a remote host, nor can it use a non-standard port for a scheme. detail see:http://code.google.com/appengine/docs/java/urlfetch/overview.html 2010/1/30 Andreas Blomqvist <blomqvist.andr...@gmail.com> > Ok! > > its a htmlunit package that gets the error > > [java] Jan 30, 2010 11:38:45 AM > com.google.apphosting.utils.jetty.JettyLogger warn > [java] WARNING: Error for /myservlet > [java] java.lang.ExceptionInInitializerError > [java] at > com.xxx.fs.FSServlet.processRequest(FSServlet.java:93) > [java] at com.xxx.fs.FSServlet.doGet(FSServlet.java:257) > [java] at > javax.servlet.http.HttpServlet.service(HttpServlet.java:693) > [java] at > javax.servlet.http.HttpServlet.service(HttpServlet.java:806) > [java] at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) > [java] at > com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:51) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:121) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) > [java] at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > [java] at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > [java] at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > [java] at > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) > [java] at > com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70) > [java] at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > [java] at > com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:352) > [java] at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > [java] at org.mortbay.jetty.Server.handle(Server.java:313) > [java] at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > [java] at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830) > [java] at > org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) > [java] at > org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) > [java] at > org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) > [java] at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > [java] at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > [java] Caused by: java.security.AccessControlException: access denied > (java.net.NetPermission specifyStreamHandler) > [java] at > java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) > [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:151) > [java] at java.net.URL.checkSpecifyHandler(URL.java:629) > [java] at java.net.URL.<init>(URL.java:501) > [java] at > com.gargoylesoftware.htmlunit.util.UrlUtils.toUrlUnsafe(UrlUtils.java:91) > [java] at > com.gargoylesoftware.htmlunit.util.UrlUtils.toUrlSafe(UrlUtils.java:62) > [java] at > com.gargoylesoftware.htmlunit.WebClient.<clinit>(WebClient.java:161) > [java] ... 29 more > [java] Jan 30, 2010 11:38:45 AM > com.google.apphosting.utils.jetty.JettyLogger warn > [java] WARNING: Nested in java.lang.ExceptionInInitializerError: > [java] java.security.AccessControlException: access denied > (java.net.NetPermission specifyStreamHandler) > [java] at > java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) > [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:151) > [java] at java.net.URL.checkSpecifyHandler(URL.java:629) > [java] at java.net.URL.<init>(URL.java:501) > [java] at > com.gargoylesoftware.htmlunit.util.UrlUtils.toUrlUnsafe(UrlUtils.java:91) > [java] at > com.gargoylesoftware.htmlunit.util.UrlUtils.toUrlSafe(UrlUtils.java:62) > [java] at > com.gargoylesoftware.htmlunit.WebClient.<clinit>(WebClient.java:161) > [java] at > com.onecoder.fs.FSServlet.processRequest(FSServlet.java:93) > [java] at com.onecoder.fs.FSServlet.doGet(FSServlet.java:257) > [java] at > javax.servlet.http.HttpServlet.service(HttpServlet.java:693) > [java] at > javax.servlet.http.HttpServlet.service(HttpServlet.java:806) > [java] at > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) > [java] at > com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:51) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:121) > [java] at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > [java] at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) > [java] at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > [java] at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > [java] at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > [java] at > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) > [java] at > com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70) > [java] at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > [java] at > com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:352) > [java] at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > [java] at org.mortbay.jetty.Server.handle(Server.java:313) > [java] at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > [java] at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830) > [java] at > org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) > [java] at > org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) > [java] at > org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) > [java] at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > [java] at > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > > On 30 January 2010 12:40, 杨浩 <skzr....@gmail.com> wrote: > >> It's not enough information! >> Show the full stack trace,please! >> >> 2010/1/30 Andreas Blomqvist <blomqvist.andr...@gmail.com> >> >> Hi all >>> >>> I get this error: >>> >>> *java.security.AccessControlException: access denied >>> java.net.NetPermission specifyStreamHandler* >>> >>> when trying to connect to my GAE server. Anyone know how to grant >>> permissions in GAE? >>> >>> thanks >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Google App Engine for Java" group. >> To post to this group, send email to >> google-appengine-j...@googlegroups.com. >> To unsubscribe from this group, send email to >> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com> >> . >> For more options, visit this group at >> http://groups.google.com/group/google-appengine-java?hl=en. >> > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine for Java" group. > To post to this group, send email to > google-appengine-j...@googlegroups.com. > To unsubscribe from this group, send email to > google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine-java?hl=en. > -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.