• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Paul Clapham
  • Ron McLeod
Sheriffs:
  • Jeanne Boyarsky
  • Liutauras Vilda
Saloon Keepers:
  • Tim Holloway
  • Carey Brown
  • Roland Mueller
  • Piet Souris
Bartenders:

Applet fails before init()

 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have a fairly simple applet that a customer is trying to use, but it works on some of their PCs and fails to initialize on others. The applet lets the user input a name and password, then encrypts the password and sends the login info back to the server CGI program. At the customer site, all users are running Netscape 4.75 and Win95. I've installed Netscape (I hate NS!) 4.75 on a Win95 computer here but cannot get the applet to fail.
See it here: www.intelebook.net/sabretest
It fails during initialization before it gets to my init() routine. When I set the 'debug' param for the applet, at the point of failure I get the message:
java.lang.NullPointerException
at java.lang.StringBuffer.append(Compiled Code)
My code had only two places that used StringBuffer and I made a version that removed any StringBuffer code and I get the same message.
I'm fairly lost at this point. Any applet experts out there have any insight?
 
Ranch Hand
Posts: 347
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Don!
I'm not sure if this will help you, but I tried your link using Netscape 4.73 on a WinNT machine. (Netscape 4.75 may use a different version of Java, I don't know). Anyway, the applet fails every time and when I look in the Java Console for the browser I get the following error:


Netscape Communications Corporation -- Java 1.1.5
Type '?' for options.
Symantec Java! ByteCode Compiler Version 210.065
Copyright (C) 1996-97 Symantec Corporation
# New applet context: http://www.intelebook.net/sabretest/, contextID=5
# Initializing applet: LoginApplet.class, appletID=45645872, contextID=5
# Starting applet: LoginApplet, appletID=45645872, contextID=5
# Loading classes from downloaded archive file: http://www.intelebook.net/intelebook/LoginApplet.jar
java.io.IOException: bad zip file format
at netscape.applet.AppletClassLoader.openArchive(Compiled Code)
at netscape.applet.AppletClassLoader.openArchive(Compiled Code)
at netscape.applet.AppletClassLoader.<init>(Compiled Code)
at netscape.applet.AppletClassLoader.getClassLoader(Compiled Code)
at netscape.applet.DerivedAppletFrame$LoadAppletEvent.dispatch(Compiled Code)
at java.awt.EventDispatchThread$EventPump.dispatchEvents(Compiled Code)
at java.awt.EventDispatchThread.run(Compiled Code)
at netscape.applet.DerivedAppletFrame$AppletEventDispatchThread.run(Compiled Code)
# Unable to load archive http://www.intelebook.net/intelebook/LoginApplet.jar: java.io.IOException: bad zip file format
# Loading class LoginApplet
# Fetching http://www.intelebook.net/intelebook/LoginApplet.class
# Applet exception: class LoginApplet could not be loaded
# Applet LoginApplet class LoginApplet could not be loaded


Seems to keep complaining about a bad zip file format. Are all clients using the same version of your jar file? Just a thought.
Stephanie
 
Don Arnett
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Stephanie. First time that I've seen those error messages.
 
Ranch Hand
Posts: 124
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Don,
Just a wild thought. ....
Try initializing the StringBuffer as
StringBuffer sb = new StringBuffer("");
instead of new StringBuffer();
I know that is silly, but it had worked for me.
Ashwin.
 
Don Arnett
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I will try that but it appears to be a StringBuffer call that isn't in my code. I have a version where I removed my two StringBuffer references and get the same error messages.
But, since I can't duplicate the error here, I'm relying on others to perform the test and maybe they aren't doing what I ask them to do.
 
Ashwin Desai
Ranch Hand
Posts: 124
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am using IE 5.0 and the applet loaded properly. No errors.
Ashwin.
 
Don Arnett
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
That's cuz IE rulz and Netcrap...
 
Ranch Hand
Posts: 318
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Don,
Here's another idea. Don't assume that just because you changed the applet that it will be reflected in the browser. Both IE and Netscape cache applets and I have had a LOT of trouble when trying to debug applets. In IE, I can't get it to reflect anything other than the cached version of an applet until the NEXT DAY...and yes, I know how to supposedly delete the cache in IE but it doesn't work. In Netscape, you can do it though. Go to Edit->Preferences clear the history and the Loaction Bar...then at the left choose Advanced and then Cache. Clear the Memory Cache and Disk Cache. Not sure if ALL of those are necessary but if you do all of those, it will clear the cache. I can't tell you how many times I've fixed a bug in an applet and opened it in a brower and seen the old version. You have to clear the cache. You may already have done this but wanted to suggest it. I have had problems with StringBuffer like the other person said when I don't initialize to a null string. It yields problems in some cases and not in others. I bet that's the problem. Hope it helps.
With Respect,
Matt
 
Don Arnett
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks for the replies. I have verified that the particular computers that my applet doesn't work on don't like it if I create a TextField object with:
TextField(10) or TextField("",10)
If I create it as TextField(" ",10), it works fine.
I've posted a question about this above.
 
reply
    Bookmark Topic Watch Topic
  • New Topic