Basic Java applet error, cant figure it out!
the applet is at http://primecode.co.uk/
page source is
Code:
<html>
<body>
<applet code = 'fun.class'
archive = 'javaapplication28.jar',
width = 300,
height = 300 />
</body>
</html>
i have uploaded two files to the root directory alongside the index.html page, these files are named fun.class and javaapplication28.jar, however when i run the applet i get this error
java.lang.NoClassDefFoundError: fun (wrong name: javaapplication28/fun)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknow n Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Un known Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(U nknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Un known Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Un known Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unk nown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unk nown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionR unnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.NoClassDefFoundError: fun (wrong name: javaapplication28/fun)
i have uploaded a previous applet with the same html markup so im not sure whats wrong, however whats different between this new applet thats ive uploaded and the old one is that this applet is in a package whilst my old one wasnt. the package is called 'javaapplication28'. now i noticed that when i compiled the applet into a jar file it named it JavaApplication28 and so i thought this was given the error because it was a different case but when i changed it to lower case on the webserver i still get same error.
below is the source code to my class file.
thanks for taken the time to look.
Code:
package javaapplication28;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class fun extends JApplet {
JButton jb;
JTextField jt;
JPanel jp;
String text = "hello";
@Override public void init() {
setLayout(new BorderLayout());
jp = new JPanel();
jp.setLayout(new FlowLayout());
jt = new JTextField(" ");
getContentPane().add(BorderLayout.NORTH,jt);
getContentPane().add(BorderLayout.CENTER,jp);
jb = new JButton("Change text");
jp.add(jb);
jb.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){
text = jt.getText();
repaint();
}});
}
@Override public void paint(Graphics g){
super.paintComponents(g);
g.drawString(text, 50, 50);
}
}