2012-07-11 86 views
1

我想执行这个程序, http://java.sun.com/developer/technicalArticles/ThirdParty/WebCrawler/WebCrawler.java 程序编译没有任何错误我提到这个页面后, http://www.velocityreviews.com/forums/t146972-web-crawler.htmlJava安全访问控制异常

但是在使用该命令而执行“小程序查看WebCrawler.html”我得到这个例外..

Exception in thread "Thread-4" 
java.security.AccessControlException:access denied(java.net.SocketPermission java.sun.com:80 connect,resolve) 

at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) 

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

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

at java.lang.SecurityManager.checkConnect(SecurityManager.java:1034) 

at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) 

at sun.net.www.http.HttpClient.<init>(HttpClient.java:233) 

at sun.net.www.http.HttpClient.New(HttpClient.java:306) 

at sun.net.www.http.HttpClient.New(HttpClient.java:323) 

at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:860) 

at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:801) 

at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:726) 

at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1049) 

at java.net.URL.openStream(URL.java:1010) 

at WebCrawler.robotSafe(WebCrawler.java:139) 

at WebCrawler.run(WebCrawler.java:235) 

at java.lang.Thread.run(Thread.java:619) 

我如何使它工作。

+0

你有访问本地文件WebCrawler.html的权限? – supertopi 2012-07-11 18:26:35

+0

我如何设置权限? – rakesh 2012-07-12 06:23:34

回答

1

默认情况下,小应用程序只能连接到它所在的同一个服务器+端口。你可以做下列之一:

  1. 转换应用程序到应用程序,removng安全限制
  2. 使用受信任/签名的小

此外,你可以看看配置跨域对于小程序,请参见:

http://weblogs.java.net/blog/2008/05/28/java-doodle-crossdomainxml-support

+0

Reimus-我试图将它转换成一个签名的小程序。但是,我很担心在MANIFEST文件中分配启动类。我应该添加哪个课程?必须添加此公共类WebCrawler扩展Applet实现的ActionListener,Runnable类或“public static void main(String argv [])”。 – rakesh 2012-07-14 06:14:19