Trädvy Permalänk
Medlem
Registrerad
Apr 2016

Applet är inte initierad

Hej
Förlåt för jätte många frågor... men jag har en jätte seriös fråga
I min lärobok finns ganska många uppgifter som krävs att köra Applet.
Men, min dator "ALDRIG" vill att köra Applet

Jag har en exempel kod från min lärobok

package Exempel_KAP9; import java.awt.*; import javax.swing.*; public class PolyDemo extends JApplet { int n, r, x0, y0; double vinkel; int[]x,y; public void init() { String s = getParameter("antal"); n = Integer.parseInt(s); s = getParameter("radie"); r = Integer.parseInt(s); x0 = getSize().width/2; y0 = getSize().height/2; x = new int[n]; y = new int[n]; vinkel = 2*Math.PI/n; for(int i = 0; i<n; i++){ double v = i*vinkel; x[i] = x0 + (int)Math.round(r*Math.cos(v)); y[i] = y0 - (int)Math.round(r*Math.sin(v)); } } public void paint(Graphics g) { g.fillPolygon(x,y,n); } }

Det är kod från min lärobok när man kör det, Java måste visa ett sjuhörnig polygon.
Det är HTML fil från lärobok

<html> <head> <title>PolyDmeo</title> </head> <body> <applet code = PolyDemo.class width = 250 height=250> <param name = antal value =7> <param name = radie value =100> </applet> </body> </html>

Jag har skrivit exakt lika som står i boken.
Men när jag kör program, Netbeans kommandofönstret visar load: hittade inte klassen PolyDemo.class.

java.lang.ClassNotFoundException: PolyDemo.class at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:219) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:152) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:634) at sun.applet.AppletPanel.createApplet(AppletPanel.java:799) at sun.applet.AppletPanel.runLoader(AppletPanel.java:728) at sun.applet.AppletPanel.run(AppletPanel.java:378) at java.lang.Thread.run(Thread.java:745)

och i Applet fönstret står Starta: Applet är inte initierad

Min dator vill inte öppna alla typer av appleter. Jag har provat kanske 5~6 appleter men inga öppnades.
Appletviewer som ligger i mappen jdk1.8.0_101 och jdk1.8.0_73 fungerar inte alltså ( De stängs automatiskt efter 1 sekund)
Vad måste jag göra ?? Installera om dator?

Trädvy Permalänk
Medlem
Registrerad
Nov 2016

Nu var det väldigt länge sedan jag gjorde något med applets men tror den söker efter Exempel_KAP9/PolyDemo.class eftersom du har package Exempel_KAP9

code attributet ska nog vara code="Exempel_KAP9.PolyDemo" och klassen ska ligga i en katalog med namnet Exempel_KAP9

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av furbel:

Nu var det väldigt länge sedan jag gjorde något med applets men tror den söker efter Exempel_KAP9/PolyDemo.class eftersom du har package Exempel_KAP9

code attributet ska nog vara code="Exempel_KAP9.PolyDemo" och klassen ska ligga i en katalog med namnet Exempel_KAP9

Jag har löst problem delvist.
Konsol visade ClassNotFoundException eftersom html hade samma namn som java fil. Men nu visar det null NumberFormatException på raden 18 (html fil lägger i samma folder var java fil lägger)

n = Integer.parseInt(s);

...

Trädvy Permalänk
Medlem
Registrerad
Nov 2016

Pröva med "" runt alla html attribut.

<param name="antal" value="7">
<param name="radie" value="100">

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av furbel:

Pröva med "" runt alla html attribut.

<param name="antal" value="7">
<param name="radie" value="100">

Jag har provat som har du sagt.. men fortfarande visar NumberFormatException null på raden n = Integer.parseInt(s); Jag tror det är konstigt eftersom jag har skrivit exakt exakt lika som står i min lärobok .. men i min lärobok koden fungeras jättebra ( Författare visade figur som man får)

Trädvy Permalänk
Medlem
Registrerad
Nov 2016

Du får göra lite strategiska utskrifter med System.out.println("...") precis före där felet uppstår. Lämpligtvis skriva ut parametrar och sådant för att se vad som kommer in.

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av furbel:

Du får göra lite strategiska utskrifter med System.out.println("...") precis före där felet uppstår. Lämpligtvis skriva ut parametrar och sådant för att se vad som kommer in.

Ska det stå någonting i "..."?jag har provat att klistra in det innan raden 18 men händer inget speciellt. Bara visar ... före error utskrift

Trädvy Permalänk
Medlem
Registrerad
Nov 2016

Det verkar funka för mig i alla fall, tog din kod, satte in klassen i katalogen, ändrade code taggen och satte in "" på alla attribut, se bilden.

http://imgur.com/a/bmwDD

Jag står alltså i "test" och kör appletviewer index.html som har applet taggen, och PolyDemo klassen ligger i katalogen Exempel_KAP9

Kontrollera allt emot den lösningen på bilden.

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av furbel:

Det verkar funka för mig i alla fall, tog din kod, satte in klassen i katalogen, ändrade code taggen och satte in "" på alla attribut, se bilden.

http://imgur.com/a/bmwDD

Jag står alltså i "test" och kör appletviewer index.html som har applet taggen, och PolyDemo klassen ligger i katalogen Exempel_KAP9

Kontrollera allt emot den lösningen på bilden.

Hos mig resultat är samma... NumberFormatException.. Förstår inte varför.....
Kan du kopiera din kod här? Jag tror det blir bättre om jag kopierar din kod och se vad händer.. och vad är skillnad..