Solved

Applet loading progress meter for java1.1

Posted on 2001-08-20
5
213 Views
Last Modified: 2013-11-23
I have a largish applet with images that at present is stored in a signed cab file.

I wish to have a progress indicator so that the users
can see something happening.

This is similar to another question posed a few months back which objects answered

However I am using java1.1 and objects answer would not work as it uses URLClassLoader (not available on 1.1 I reckon)

ANother proposed answer (from matt c) was :

- get a certificate and overrride the ClassLoader to load all your classes. On each download of a class,
you will update your progress bar.


Could anyone enlighten me please

Ideally I would want to get the progress indicator up asap
then pull in a jar file with say 50K of classes or images
and update the progress indicator
repeat the above 9 more times and it's done..
And the browser would need to cache the pulled in Jar files ...



0
Comment
Question by:PhilAllen
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
5 Comments
 
LVL 92

Expert Comment

by:objects
ID: 6408063
I gave another suggestion as well (but it may have been in a different question).
It related to including just your progress bar in the main jar, and then loading 'real' main class using reflection.
This will mean the jar holding your application are not loaded initially.
0
 
LVL 92

Expert Comment

by:objects
ID: 6408078
Something like this. The important thing is that the loader applet has no references to any classes in your main jar.

public class AppletLoader extends Applet
   implements Runnable
{
        private String mainClass;

        private void loadApplet(String cn)
        {
            // Start up a thread to load main applet
            mainClass = cn;
            new Thread(this).start();
        }
       
        public void run()
        {
            try
            {
                // Instantiate the main class
                // This will cause the browser to download
                // required classes.

                Class c = Class.forName(mainClass);
                Component comp =(Component)c.newInstance();
                add(comp);
             }
             catch (Exception e)
             {
                 e.printStackTrace();
             }
       
             invalidate();
             validate();
         }
       
         public void init()
         {
             // start up your progress bar                
             loadApplet("MyApplet");
         }        
    }
0
 
LVL 16

Expert Comment

by:heyhey_
ID: 6428866
> I have a largish applet with images

I. put ALL RESOURCES in different .zip file that you can download yourself. this solution works

II. you can try 'playing' with several archives with .class file. first .zip file will contain main AppletLoder class + some helper class (progress bar etc). second .zip file will contain the 'applet extension' class + everything else. main applet (AppletLoader) is supposed to trigger donwloading of the second .zip file with Class.forName(extensionClassName).

this works in IE, it seems that some (all ??) versions of NN download all the .zip files before instantiating the applet.

III. you can use two applets, inter-applet communication + JavaScript, but it'll be probably be quite tricky to make it working in all browsers ...
0
 

Expert Comment

by:SpideyMod
ID: 8615334
A request for a refund was made, however since the questioner did not do as instructed, it was denied.  I need the experts to indicate a method of finalization.  I will return in 72 hours.  Thanks.

SpideyMod
Community Support Moderator @Experts Exchange
0
 

Accepted Solution

by:
SpideyMod earned 0 total points
ID: 8650774
PAQ'd and points refunded.

SpideyMod
Community Support Moderator @Experts Exchange
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This was posted to the Netbeans forum a Feb, 2010 and I also sent it to Verisign. Who didn't help much in my struggles to get my application signed. ------------------------- Start The idea here is to target your cell phones with the correct…
Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
Video by: Michael
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question