How to run Applet outside NetBeans

Hi,

I have problem with playing my Applet game. Currently I can run game only in NetBeans. When trying to manually run NetBeans generated file launch.jnlp there comes the AccessControlException error (“java.lang.RuntimePermission” “preferences”).I was looking how to solve problem but I couldn´t find anything usefull. I am confused about this permissions, signing jars and so on… I cant understand how my mates will play my game if even I cant play it outside IDE. ???

Regards
Jan

Try compiling the .java file into a .class file using the cmd and then create an .html document like this:

<html>
 <body>
 <applet code = "MYCLASSNAME.class" width=300 height=300>
 </applet>
 </body>
 </html>

Just replace MYCLASSNAME with the class’ name and the width and height with it’s width and height. After that just save it as .html and double click to play your applet.

I went to find the tutorial section, and am discovering things have changed since I last deployed applets.

Here is the section in the tutorials:
http://docs.oracle.com/javase/tutorial/deployment/applet/getStarted.html

Via “view source” (edit/find: HelloWorld) on that page, here is a quickie template that you can possibly use. That looks a lot like what I’ve done in the past.

<script src="http://www.java.com/js/deployJava.js" type="text/javascript"> 
</script><script type="text/javascript"> 
 
        var attributes = { code:'HelloWorld.class', 
                           archive:'examples/dist/applet_HelloWorld/applet_HelloWorld.jar',  
                           width:150, height:30} ; 
        var parameters = {} ; 
        deployJava.runApplet(attributes, parameters, '1.4'); 

</script><

JNLP is needed if you want the Applet to make use of the client computer. If you are not attempting to save or load anything to the client, I think you can safely bypass the JNLP requirements.

If you DO want to allow client access, you don’t have to go as far as getting signing to work, but you will need JNLP and will have to go through steps of asking the client user to OK the access. Signing adds a level of security.

In the only casual applet I wrote which accesses the client, I didn’t bother with Signing as it was taking a fair bit of effort for me to figure it out. The only people who were going to look at the applet knew me personally, or via this site, and trusted I hadn’t embedded a virus.

The applet is only asking me for permission to run it, than don´t ask me for any further permission, just throw error. My game is using API preferences for savegame and also is reading some text files,… So there is no problem how I run code in browser or appletviewer, it is the same,… Should I add some code for required permission or what?

What applets can and can’t do:
http://docs.oracle.com/javase/tutorial/deployment/applet/security.html

Permission to run is different from permission to read or write to the client computer. The latter requires at least JNLP, and the use of classes such as FileOpenService and FileSaveService.

JNLP Api:
http://docs.oracle.com/javase/tutorial/deployment/doingMoreWithRIA/jnlpAPI.html