Lotto-Zahlgenerator -Applet kann nicht initialisiert werden!

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo!
Ich bin noch sehr unerfahren in Java und habe nun als erstes Programm ein Lottozahlgenerator in einem Applet programmiert. Dieses Programm soll 6 ungleiche, zufällig erstellte Lottozahlen erzeugen und diese im Applet darstellen. Dazu habe ich folgenden Code geschrieben. Wenn ich das Applet jedoch mit Hilfe eines Appletviewers testen will, zeigt dieser die Fehlermeldung: "Applet nicht initialisiert!" Ausserdem tauchen noch gleiche Lottozahlen auf, was nicht sein soll. Falls jemand den Fehler entdeckt, bitte melden!!!!

Code:
Code:
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;


//Lotto-Programm

public class lotto extends Applet {
 int[] zahlen;

  public void init() {
   zahlen=new int[6];
   setLayout(new BorderLayout());
   int z;
    
    for (int i=0;i<7;i++) {   
      z=(int)(48*Math.random()+1);
      
      for (int j=i-1;j>=0;j--) {    //Überprüfung auf Zahlengleichheit.. alle Zahlen vor der einzusetzenden w. überpr.
       while (zahlen[i]==zahlen[j]) z=(int)(48*Math.random());
      }
      zahlen[i]=z;
      System.out.println(z);

    }


  }
  
  public void paint(Graphics gc) {
   gc.drawString("Hallo!",20,20);
   String s = new String();


     for (int i=0;i<7;i++) {
       s=String.valueOf(zahlen[i]);
       gc.drawString(s,8,8);
     }


  }


}
 

Sky

Top Contributor
1.) Als Anfänger sollte man 'klein' anfangen und nicht gleich mit einem Applet. Lieber ein bißchen "Kommandozeile"

2.) Wie lautet denn die Fehlermeldung? Gibt es einen Stack dazu?

3.) Du musst 'z' innerhalb deiner while-Scheife bei Ungleichheit in dein Array einfügen
 
G

Gast

Gast
Ich hab schonmal so Konsole- Programme gemacht. Dies ist nur mein erstes Applet.

Was ist ein Stack??
Der Compiler meldet keine Fehler, aber im Browser wird nichts ausser einer grauen Fläche angezeigt!!!!
 
B

Beni

Gast
Such mal in deinem Browser nach der Java-Console. Wenn ein Fehler passiert sollte dort etwas geschrieben werden wie:

Exception in thread "main" java.lang.NullPointerException
at tutorial.Main.main(Main.java:14)
 
G

Gast

Gast
Komisch, wenn ich mit dem Mauszeiger über das Applet im Browser fahre, dann wird unten in der Statusleiste: class file "Datei4.class" not found oder so ähnlich angezeigt, obwohl sich die Datei Datei4.class in dem gleichen Verzeichnis befindet wie die html- Datei. Auch eine absolute Pfadangabe klappt nicht.

Code:
<HTML>
<Head>
<Title>Datei4-Applet</Title>
</Head>
<Body>
<H1>Datei4-Applet</H1>
<HR>
<Applet Code="Datei4.class" Width=400 Height=300>
</Applet>
<HR>
</Body>
</HTML>

Die Datei Datei4.BAk existiert jedoch nicht und wird beim compilieren auch nicht erstellt.

Noch etwas: Wo befindet sich im IE6 die Java- Konsole, ich habe sie nicht gefunden?
 

L-ectron-X

Gesperrter Benutzer
Datei4.class? Deine Quellcodedatei heißt doch lotto.java., oder nicht?

Im IE ist die Java-Console standardmäßig nicht aktiviert. Du aktivierst sie ggf. in dem Du in den Internetoptionen Deines Systems oder im IE direkt im Dateimenü unter Extras -> Internetoptionen bei Microsoft VM die Java-Console aktivierst.
Dann findest Du sie im Dateimenü unter Ansicht als Java Befehlszeile. Aber diese Console zeigt nur die Ausgaben der MS-VM an. Das heißt, wenn Du eine JRE von Sun installiert hast, wird die Java-Console des IE bei deaktivierter MS-VM nichts anzeigen. Das übernimmt dann die Console der Sun-JRE.
 
G

Gast

Gast
Oops, ich hab da wohl die falsche HTML- Datei hier herein kopiert. Ich habe nämlich zwei Versionen des Lottoprogramms. Eine alte mit Datei4 und eine neue mit Lotto... Aber auch wenn ich in der HTML- Datei der Lotto- Version Lotto.class stehen habe, wird in der Java- Konsole folgende Fehlermeldung angezeigt:

Code:
Error loading class: lotto
java.lang.NoClassDefFoundError
java.lang.ClassNotFoundException: lotto
	at com/ms/vm/loader/URLClassLoader.loadClass
	at com/ms/vm/loader/URLClassLoader.loadClass
	at com/ms/applet/AppletPanel.processSentEvent
	at com/ms/applet/AppletPanel.processSentEvent
	at com/ms/applet/AppletPanel.run
	at java/lang/Thread.run

Dateien im Verzeichnis: lotto.bak, lotto.class, lotto.html, lotto.java

Programmcode:
Code:
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;


//Lotto-Programm

public class lotto extends Applet {
 int[] zahlen;

  public void init() {
   zahlen=new int[6];
   setLayout(new BorderLayout());
   int z;
    
    for (int i=0;i<7;i++) {
      z=(int)(48*Math.random()+1);
      
      for (int j=i-1;j>=0;j--) {
       while (zahlen[i]==zahlen[j]) {
         z=(int)(48*Math.random());
         zahlen[i]=z;
       }
      }
      zahlen[i]=z;
      System.out.println(z);

    }


  }
  
  public void paint(Graphics gc) {

   gc.drawString("Hallo!",20,20);
   String s = new String();


     for (int i=0;i<7;i++) {
       s=String.valueOf(zahlen[i]);
       gc.drawString(s,8,8);
       System.out.println(zahlen[i]);
     }


  }


}
Die Zeilen, die durch System.out.println() ausgegeben werden, werden jedoch in der Konsole meines Javaeditors angezeigt... Nur im Java Applet- Viewer des Editors und im Browser, kann nichts angezeigt werden!

Nochmal der Code von lotto.html:
Code:
<HTML>
<Head>
<Title>lotto-Applet</Title>
</Head>
<Body>
<H1>lotto-Applet</H1>
<HR>
<Applet Code="lotto.class" Width=400 Height=300>
</Applet>
<HR>
</Body>
</HTML>
 
G

Gast

Gast
Ich nutze den IE6 und JDK 1.4.2
VM- Version weiss ich nicht...

Allerdings funktioniert das Applet im Appleteditor meines Javaeditors [von Röhner] auch nicht. Dort wird "Applet ist nicht initialisiert!" angezeigt!
 
G

Gast

Gast
Die Konsole funktioniert allerdings im Javaeditor. Dort werden die Zahlen ausgegeben...

Bei anderen Programmen hatte ich das Problem, dass die Applets im Javaeditor laufen, im Browser aber nicht.

Ich werde mir daher später mal deinen Bericht in dem Link durchlesen. Zurzeit habe ich nicht viel Zeit!

Vielen Dank erstmal für alle Antworten!!!!!!
 

L-ectron-X

Gesperrter Benutzer
Kompiliere mal das Applet mit folgendem Befehl:
Code:
javac lotto.java -target 1.1
 
G

Gat

Gast
Hallo!

Sorry das ich nicht geantwortet habe, ich hatte viel zu tun in den letzten Tagen...

Ich hab das grad mal versucht... aber irgendwie macht mein Editor das mit den Parametern nicht. Wie kann ich das denn unter DOS compilieren??
 

L-ectron-X

Gesperrter Benutzer
Das ist der DOS- bzw. Konsolenbefehl.
Ich weiß nicht ob der Befehl
Code:
javac MeineKlasse.java -source 1.1
etwas ähnliches macht.
 
G

Gast

Gast
Mit dem Parameter -source 1.1 kann die java.- Datei nicht codiert werden und mit -target 1.1 wird, wenn man im IE mit der Maus über das Applet fährt nicht mehr "class not found" oder so angegeben sondern "ArrayIndexOutOfBoundsException"..

Wenn ich das Programm mit dem Appletviewer starten will, was muss ich denn dann bei <Optionen> eingeben?

appletviewer <?Optionen?> Pfad/HTML- Datei
 

L-ectron-X

Gesperrter Benutzer
Code:
appletviewer html-Datei
genügt, wenn Du das bin-Verzeichnis Deiner SDK-Installation im Suchpfad hast, um ein Applet mit dem Appletviewer zu starten.
 
G

Gast

Gast
Wenn ich nichts als Option eingebe dann kommt die Fehlermeldung:

E/A- Ausnahme beim Lesen: .....\lotto.html |Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch>

Ich bin mir aber sicher das der Pfad C:\lotto4\lotto.html richtig ist!!!

Boah hier klappt echt gar nix :?
 

L-ectron-X

Gesperrter Benutzer
Der Appletviewer erwartet als Argument einen URL, keinen Systempfad.
Also musst Du die Pfadseparatoren zumindest so schreiben: /

Ich habe Dir mal Code für ein solches Lotto-Applet geschrieben. Kompiliere das mal und guck mal, ob Du das ausführen kannst.

Code:
import java.applet.*;
import java.awt.*;

public class Lotto extends Applet {
  private int[] zahlen;

  public void init() {
    zahlen = new int[6];
    int aktuellerTipp = 0;

    //Zufallszahlen ziehen, bis Zahlen vollständig
    while(aktuellerTipp < zahlen.length) {
      int gezogeneZahl = (int)(Math.random() * 100);
      
      //Prüfung, ob Zahl in den Wertebereich passt
      if(gezogeneZahl < 1 || gezogeneZahl > 49)
        continue;
      else {
        zahlen[aktuellerTipp] = gezogeneZahl;
         
        //auf Duplikate prüfen
        for(int i = 0; i < aktuellerTipp; i++) {
          if(zahlen[i] == gezogeneZahl) {
               aktuellerTipp--;
          }
        }
      }
      aktuellerTipp++;
    }
  }

  public void paint(Graphics g) {
    g.drawString("Die Lottozahlen:", 10, 20);
    StringBuffer sb = new StringBuffer();
    
    for (int i = 0; i < zahlen.length; i++) {
      sb.append(zahlen[i]);
      sb.append("   ");
    }
    g.drawString(sb.toString(), 10, 40);
  }
}

Funktionsprobe hier!
 
G

Gast

Gast
Ne es kommt wieder die Meldung "class not found".....

Ich glaub ich reparier mal mein IE..

Der Appletviewer gibt auch mit /- Strichen den gleichen Fehler aus
 

L-ectron-X

Gesperrter Benutzer
Schau mal bitte in Dein HTML-File, ich habe den Klassennamen, nach den Sun Coding Conventions, groß geschrieben.
Möglicherweise ist der Name der Klasse in Deiner HTML-Datei noch klein geschrieben.

Welche VM benutzt Du? Die vom IE oder eine von Sun?
 
G

Gast

Gast
Ne ich habe den Klassenname in der java- Datei klein geschrieben..

Wie finde ich den heraus welche VM ich habe??
 

L-ectron-X

Gesperrter Benutzer
In der Console (DOS-Fenster) eingeben:
Code:
java -version

Und dann guck mal in den Einstellungen vom IE, welche VM dort aktiviert ist. Es ist besser nur eine VM zu aktivieren und das sollte natürlich die von Sun sein. :wink:
 
G

Gast

Gast
Also laut java -version hab ich

V. 1.4.2_04
VM (1.4.2_04-b04,mixed mode)

und bei den Internetoptionen

Ist Java- JIT, Java- Konsole und Java- Protokollierung aktiviert!
 

L-ectron-X

Gesperrter Benutzer
In diesem Fall arbeitet Dein IE nicht mit der Sun JVM sondern mit der modifizierten und veralteten MS-VM.
Eine Zeile in den IE-Einstellungen über den Optionen für die MS-VM sollte aber auch die Sun-VM stehen.
Wenn nicht, ist das zunächst mal nicht uunbedingt ein Beinbruch. Dann ist es aber wichtig, dass Du in Deinem Fall den Code mit dem Befehl
Code:
javac lotto.java -target 1.1
kompilierst, weil die MS-VM den kompilierten Code der aktuelleren SDK-Versionen nicht mehr interpretieren kann.
 
G

Gast

Gast
Ich hab jetzt mal deine Version der lotto.java- Datei in das Compiler- Verzeichnis gepackt und dann mit dem target- Parameter compiliert.

Jetzt funktioniert das Applet!!!! :)

Mein Applet versuche ich jetzt auch noch in Gang zu bekommen.

Vielen Dank für die Hilfe!!!!
 
G

Gast

Gast
Na bei meiner Version scheint wohl doch noch der ArrayIndexOutOfBounds- Fehler drin zu sein. Aber den finde ich schon...
 

L-ectron-X

Gesperrter Benutzer
Mit meiner Version, die ja auch nur eine Variante ist, hast Du ja schon mal ein brauchbares Codestück zum Vergleichen.
Viel Glück! :wink:
 
G

Gast

Gast
Ich glaube so ist meine Version jetzt auch richtig:

Code:
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;


public class lotto extends Applet {
 int[] zahlen;

  public void init() {
   zahlen=new int[6];
   setLayout(new BorderLayout());
   int z;
    
    for (int i=0;i<6;i++) {
      z=(int)(48*Math.random()+1);
      
      for (int j=i-1;j>=0;j--) {
       while (z==zahlen[j]) {
         z=(int)(48*Math.random());
       }
       zahlen[i]=z;
      }
      zahlen[i]=z;
      System.out.println(z);

    }


  }
  
  public void paint(Graphics gc) {

   gc.drawString("Hallo! Dies sind die Lottozahlen:",80,20);
   String s = new String();


     for (int i=0;i<6;i++) {
       s=String.valueOf(zahlen[i]);
       gc.drawString(s,80,i*10+40);
       System.out.println(zahlen[i]);
     }


  }

}

Ich bin mir nicht ganz sicher, aber ich habs schon mehrmals getestet und es kamen keine gleichen Zahlen!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Applet: com.sun.deploy.security.BlockedException :-( Tools - Maven, Gradle, Ant & mehr 0
M Applet Applet legt Browser lahm Tools - Maven, Gradle, Ant & mehr 3
J Applet Aus anderer Browserinstanz Applet abfragen Tools - Maven, Gradle, Ant & mehr 2
P Linux Applet/Webstart Schriftunterschiede Tools - Maven, Gradle, Ant & mehr 3
E JMol -Applet Einbindung Tools - Maven, Gradle, Ant & mehr 0
T Applet Applet und IText wirft Incompatible magic value 1008813135 Fehler Tools - Maven, Gradle, Ant & mehr 6
P Applet Java Applet läuft im Browser nicht mehr (HTTPClient - NoClassDefFoundError) Tools - Maven, Gradle, Ant & mehr 3
P Applet Applet Signatur auf Server mit SSL-Zertifikat? Tools - Maven, Gradle, Ant & mehr 7
H Applet Applet wird nicht angezeigt Tools - Maven, Gradle, Ant & mehr 2
M Applet Applet funktioniert in Google Chrome nicht Tools - Maven, Gradle, Ant & mehr 2
O Applet "Anwendung kann nicht ausgeführt werden" Tools - Maven, Gradle, Ant & mehr 6
Q Applet Fehlermeldung bei Applet-Wechsel Tools - Maven, Gradle, Ant & mehr 4
T Daten per POST-Methode aus Java-Applet nach php-Script senden Tools - Maven, Gradle, Ant & mehr 3
R Applet friert Adresszeile des Firefox ein Tools - Maven, Gradle, Ant & mehr 2
K Applet als Jar-Datei in HTML einbinden Tools - Maven, Gradle, Ant & mehr 14
H Applet-Fehlermeldung Tools - Maven, Gradle, Ant & mehr 10
H Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 3
Q Applet Applet läuft nicht im Browser Tools - Maven, Gradle, Ant & mehr 14
J Applet URL mittels TTS als Applet lesen lassen Tools - Maven, Gradle, Ant & mehr 40
F Applet verwischt, wenn Seite gescrollt wird Tools - Maven, Gradle, Ant & mehr 16
S Applet Applet mit C# öffnen: java.lang.SecurityException: Permission denied (WinXP) Tools - Maven, Gradle, Ant & mehr 8
J Applet-Quellcode einsehen Tools - Maven, Gradle, Ant & mehr 6
E Applet Applet und Datenbank Konzept Tools - Maven, Gradle, Ant & mehr 4
A Applet: Html Datei und Class Datei nicht im selben Verzeichnis Tools - Maven, Gradle, Ant & mehr 2
S Applet soll Textdatei von fremdem Server öffnen Tools - Maven, Gradle, Ant & mehr 8
E Java Applet bearbeiten Tools - Maven, Gradle, Ant & mehr 8
Quasar Wie signiere ich mein Applet richtig? Tools - Maven, Gradle, Ant & mehr 6
M mit Applet Javascript Aufrufen Tools - Maven, Gradle, Ant & mehr 2
S Applet and stop() method und gui blocked Tools - Maven, Gradle, Ant & mehr 4
A Applet Applet startet nach Einbinden auf Website nicht Tools - Maven, Gradle, Ant & mehr 4
A Applet, xxx.jar und hsqldb Tools - Maven, Gradle, Ant & mehr 4
T Webstart oder Applet Tools - Maven, Gradle, Ant & mehr 2
H Applet applet neu laden im browser Tools - Maven, Gradle, Ant & mehr 10
M Applet neustart Tools - Maven, Gradle, Ant & mehr 5
S Applet request unter Linux Tools - Maven, Gradle, Ant & mehr 14
S Applet GUI nicht im Webbrowser sichtbar Tools - Maven, Gradle, Ant & mehr 5
S Mittel Applet Datei an ein Webserver übertragen Tools - Maven, Gradle, Ant & mehr 2
M Applet in ClientServer J2EE Anwendung debugen Tools - Maven, Gradle, Ant & mehr 6
H Java Applet Problem beim einbinden in HTML Tools - Maven, Gradle, Ant & mehr 3
M Java3D Applet flackert wenn ein Button(HTML) gedrückt wird Tools - Maven, Gradle, Ant & mehr 11
S Policy mit Signiertem Applet verteilen Tools - Maven, Gradle, Ant & mehr 9
F Applet findet include nicht Tools - Maven, Gradle, Ant & mehr 15
L PHP + Java Applet Kommunikation Tools - Maven, Gradle, Ant & mehr 9
C Probleme mit Applet mit SQL im Browser Tools - Maven, Gradle, Ant & mehr 4
G Java-Applet Probleme beim Browser Tools - Maven, Gradle, Ant & mehr 14
G Textfile in Applet laden möglich? Tools - Maven, Gradle, Ant & mehr 2
A Java-Applet Sandbox deaktiviren? Tools - Maven, Gradle, Ant & mehr 2
B Java-Applet geht nicht (auf dem Webserver) Tools - Maven, Gradle, Ant & mehr 9
P Applet läuft nicht in Browser Tools - Maven, Gradle, Ant & mehr 21
V JAR-Datei eines (J)Applet funktioniert nicht - Help! Tools - Maven, Gradle, Ant & mehr 19
S Java Applet per Klick starten? Tools - Maven, Gradle, Ant & mehr 6
S Applet geht nicht Tools - Maven, Gradle, Ant & mehr 25
J Applet signieren Tools - Maven, Gradle, Ant & mehr 2
H Applet - Geschicklichkeitsspiel programmieren Tools - Maven, Gradle, Ant & mehr 16
U Jar funktioniert nicht als Applet Tools - Maven, Gradle, Ant & mehr 3
C Applet Frage Tools - Maven, Gradle, Ant & mehr 4
M Java Applet - enforce use of older JRE Tools - Maven, Gradle, Ant & mehr 3
N Wie Java-Programm zu Applet machen?! Tools - Maven, Gradle, Ant & mehr 2
W Webseite aus Applet öffnen Tools - Maven, Gradle, Ant & mehr 3
lumo Applet - resize Tools - Maven, Gradle, Ant & mehr 7
Icewind Applet reagiert nach neu laden der Webseite nicht mehr verlässlich auf KeyEvents Tools - Maven, Gradle, Ant & mehr 6
R Applet mit MySQL Tools - Maven, Gradle, Ant & mehr 3
A jar datei trotz zertifikat nich aus applet ausführbar Tools - Maven, Gradle, Ant & mehr 4
F Fehlende Applet Rechte Tools - Maven, Gradle, Ant & mehr 12
N [Applet] Button wir nach 5 secs Unsichtbar Tools - Maven, Gradle, Ant & mehr 2
N jar -> applet wie setzt man das am leichtesten um Tools - Maven, Gradle, Ant & mehr 7
V applet Java 1.6 -> 1.5 Problem ... wie mit Ant zu lösen? Tools - Maven, Gradle, Ant & mehr 7
F applet als JAR -> AccessControlException Tools - Maven, Gradle, Ant & mehr 3
grudge File in Applet laden Tools - Maven, Gradle, Ant & mehr 4
E Java Applet - Double Buffering Problem (Flackern) Tools - Maven, Gradle, Ant & mehr 6
R Applet mit bestimmter JRE ausführen Tools - Maven, Gradle, Ant & mehr 9
traysa Wie binde ich ein applet in eine jsp Tools - Maven, Gradle, Ant & mehr 3
D Mit dem Applet das DOM manipulieren? Tools - Maven, Gradle, Ant & mehr 3
ABstraCT Applet getCodeBase() Zugriff auf darüberliegendenden Ordner ? Tools - Maven, Gradle, Ant & mehr 1
S Java-Applet Steuerung IO Karte am Drucker-Port Tools - Maven, Gradle, Ant & mehr 4
P URL aus Applet öffnen? Tools - Maven, Gradle, Ant & mehr 7
ABstraCT Mit Applet in ne Datei auf seinem Server schreiben. Tools - Maven, Gradle, Ant & mehr 10
E Verzögerung beim Refresh (F5) mit einem Applet verursachen Tools - Maven, Gradle, Ant & mehr 16
deetee Applet Frage Tools - Maven, Gradle, Ant & mehr 2
S Fehler in einem Upload - Applet (nicht gelöst!!) Tools - Maven, Gradle, Ant & mehr 2
G Variable an zweites Applet übergeben Tools - Maven, Gradle, Ant & mehr 3
M Dringend: Sehr kompliziertes Applet Problem Tools - Maven, Gradle, Ant & mehr 4
O Javascript kommuniziert mit Applet? Tools - Maven, Gradle, Ant & mehr 2
H Spracherkennung mit Applet / Policy bzw. Security Fehler Tools - Maven, Gradle, Ant & mehr 2
zilti Nerviger Hinweis bei Applet- und WS-Fenstern - wieso? Tools - Maven, Gradle, Ant & mehr 3
S Datei-/Verzeichniszugriff von signiertem Applet Tools - Maven, Gradle, Ant & mehr 6
G Signiertes Applet installieren? Tools - Maven, Gradle, Ant & mehr 3
G Applet mit Parameter aus JavaScript Tools - Maven, Gradle, Ant & mehr 5
A Applet Maus Koordinaten ohne MouseMotionListener Tools - Maven, Gradle, Ant & mehr 3
K Applet in Eclipse funktioniert, im Browser nicht Tools - Maven, Gradle, Ant & mehr 7
T Applet soll Java Programm starten Tools - Maven, Gradle, Ant & mehr 2
S Applet pai.nt? Tools - Maven, Gradle, Ant & mehr 3
S Applet und File-Object? Tools - Maven, Gradle, Ant & mehr 9
T Applet soll Datei lesen (darf es aber nicht.) Tools - Maven, Gradle, Ant & mehr 3
P Java-Applet funktioniert unter WINXP nicht Tools - Maven, Gradle, Ant & mehr 2
N Java 1.6 Applet auf älteren Versionen ausführbar? Tools - Maven, Gradle, Ant & mehr 4
G Signiertes Applet prüfen? Tools - Maven, Gradle, Ant & mehr 3
H Problem mit einen Applet Tools - Maven, Gradle, Ant & mehr 5
J Java Applet bei mouseover mit Tooltip Tools - Maven, Gradle, Ant & mehr 3
G Applet Security Problem Tools - Maven, Gradle, Ant & mehr 3

Ähnliche Java Themen

Neue Themen


Oben