Applicet Framework Home


Installing the Applicet Framework

  1. Extracting the files

    The Applicet Framework is distributed in a .zip-file. The software (.jar-files) itself is password protected. You obtain the password only after you accept the License Agreement that is included in the distribution package, not through the online version of the License Agreement!

    Use your favorite .zip utility to extract all files, preserving the directory structure contained in the .zip-file, read and accept the License Agreement on your local computer system, and then you get the password to extract the appropriate .jar-file. The .jar files are in a password-protected file encryptedJars.zip

    Once again, the password is NOT online. The password is in the download only. Once downloaded, you should unzip all files, read and accept the License Agreement (license.htm) that is contained in the download (it is the same agreement as the one you may just have read online, but the <ACCEPT> button action is different). When you press (click on) the <ACCEPT> button, you will be presented the password to unpack the .jar files.

    The reason for this procedure is simple. While our official distribution site enforces acceptance of the License Agreement before downloading, other distribution sites do not. Therefor we ask you to accept the downloaded License Agreement before giving you the password.

  2. End user installation

    If you are an end user of a software that is distributed with the Evaluation Version of the Applicet Framework, the author should have included instructions on how to replace that with the Production Version, after your free 30-day evaluation period is finished. If he has not, you should point out to him that he has breached his license agreement with us by not including these instructions.

  3. Java programmer installation

    Swing or AWT

    The Applicet Framework for Swing and that for AWT are functionally the same, though the Swing version extends javax.swing.JApplet, and the AWT version extends java.applet.Applet. For maximum compatibility however, the AWT version is still compiled using the JDK 1.1.8. The Swing version on the other hand is compiled using JDK1.3 (with the default JDK1.2 target), and will run only in Java 2 environments; the reason for this is that we are not aware of any Java 1-level web browser that incorporates Swing anyway. The Swing jarfiles are named JApplicet.jar and JApplicetLN.jar, the AWT jarfiles are Applicet.jar and ApplicetLN.jar. Note that only the production release has the seperate *LN.jar libraries, compiled with line numbers for debugging, whereas the evaluation release always has the classes with line numbers in the standard jar files.

    Developping

    If you are a Java programmer, you should know how to make the appropriate .jar-file available in your classpath. To upgrade existing .java Applets to use the Applicet Framework, just replace
    public class MyApplet extends java.applet.Applet {
        ...
    }
    
    by
    public class MyApplet extends be.arci.applet.Applicet {
    
        public static void main(String[] args) {
            new MyApplet().runAsApplication(args);
        }
        ...
    }
    
    This is all that is needed to make MyApplet run as an application with commandline parameters:

    java MyApplet param=value ...

    To get more out of the Applicet Framework you will have to read the documentation. In particular we recommend using Applicet's getResource(String), getResourceAsStream(String), getImage(String) and getAudioClip(String) methods instead of messing around with getCodeBase() and constructing or hardcoding URLs to use with the equivalent Applet methods. And if your program displays any user message at all: use Applicet's internationalization support. It is so easy, just look at our examples.

    Note: The main method of the above example need not be in the MyApplet source code itself. It can reside in any other class, that you then have to start to run the Applicet application. But still the MyApplet class has to extend Applicet. Example:

    public class MyApplet extends be.arci.applet.Applicet {
        ... //code left unmodified
    }
    
    and define a new class:
    public class MyApplication {
    
        public static void main(String[] args) {
            new MyApplet().runAsApplication(args);
        }
    }
    
    and then run as:

    java MyApplication param=value ...

    Packaging

    For execution of your Applicet subclass as applet, less classes are needed than for execution as application: the webbrowser will supply the AppletStub and AppletContext implementation, other Applicet Framework classes need only be packaged in as far as they are used. Applicet applications need almost all the classes in the be.arci.applet package, as described in Packaging your Applicet classes and resources. This makes it possible to make a light Applicet applet package for demonstrating your software on a website, and restrict download of the full Applet application package, all from the same .class files; just the packaging is different. Or you might distribute evaluation versions of your software just by distributing it with the Evaluation Version of the Applicet Framework: the 'evaluation version' message in the status field is prominent enough for a reminder, and does not hinder your program's functionality. This is what we do with our Applicet examples.

  4. Hackers corner

    The Applicet Framework is not meant to steal applets and run them as local applications. Even if the original author of an applet you need to use has moved, or, like when the applet wasn't properly programmed (e.g. no getAppletInfo() implemented or no address in it), you do not even know him, you usually have no right to reverse engineer or modify the bytecode of the applet class.

    As shareware authors we strongly protest against stealing software. We know that if you don't buy their software, you won't buy ours either. So while it is possible to change the superclass of an Applet to Applicet in bytecode only, we do not encourage such use and give no public information on it's details. Indeed, we made the qualified Applicet classname of different length than the qualified Applet class name, just to make hacking applets more difficult.



Applicet Framework Home