Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Applet loading progress meter for java1.1

Posted on 2001-08-20
5
Medium Priority
?
218 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

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

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

Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
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…
Viewers will learn about if statements in Java and their use The if statement: The condition required to create an if statement: Variations of if statements: An example using if statements:
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
Suggested Courses

596 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