jQuery in Action, 3rd edition
The moose likes Applets and the fly likes Problem RMI and Applet (java.security. AccessControlException) Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Applets
Bookmark "Problem RMI and Applet (java.security. AccessControlException)" Watch "Problem RMI and Applet (java.security. AccessControlException)" New topic

Problem RMI and Applet (java.security. AccessControlException)

Sultan Al-Yahyai

Joined: Nov 07, 2004
Posts: 7

I wrote RMI application and it worked well and fine. then my supervisior asked me to change the client to applet. when I run the applet and it try to connect to the server I got the following error message:
java.security.AccessControl Exception: access denied (java.net.SocketPermission connect,resolve)
at java.security. AccessControlContext. checkPermission(AccessControlContext.java:264)
at java.security. AccessController. checkPermission(AccessController.java:427)
at java.lang.SecurityManager. checkPermission(SecurityManager.java:532)
at java.lang. SecurityManager.checkConnect(SecurityManager.java:1034)
at java.net.Socket. connect(Socket.java:501)
at java.net.Socket. connect(Socket.java:457)
at java.net.Socket. <init>(Socket.java:365)
at java.net.Socket. <init>(Socket.java:178)
at sun.rmi.transport. proxy.RMIDirectSocketFactory. createSocket
at sun.rmi.transport.proxy. RMIMasterSocketFactory.createSocket

in the server side all allow all permisions
grant {
permission java.security.AllPermission;

what could be the problem and what is the soultion??
Mark Vedder
Ranch Hand

Joined: Dec 17, 2003
Posts: 624

Applets are limited in what functionality they can perform natively. You cannot override these limits in the Applet's code, or set them server side. You must sign the applet and have the user grant the applet permission to perform the desired function. Alternatively, you can alter the JVM's default security settings on the client. This is often less desirable since it involves a client touch for any client that will run the applet. In a controlled client environment, this may not be as much of an issue. The danger of the client touch is that if it done improperly, you can end up granting other undesirable applets full permission and eliminating Java's security Take a look at Sun's Applet Security FAQ and This JavaWorld Article, and the Sun's Development guide. You can also Google the topics Applet Security and Code Signing.
I agree. Here's the link: http://aspose.com/file-tools
subject: Problem RMI and Applet (java.security. AccessControlException)
It's not a secret anymore!