MEDIA-Tracker macht Probleme?

Status
Nicht offen für weitere Antworten.

Proggy

Bekanntes Mitglied
Hallo,

schaut Euch mal bitte folgenden Codeausschnitt aus der INIT-Methode eines Applets an. Ist der so korrekt???

Ich möchte Bilder vorladen und dann erst starten.
Code:
public void init()
	{
		this.setSize(800,600);
		Toolkit tk=getToolkit();
		MediaTracker mt = new MediaTracker(this);
		//Vorladen der Bilder und der Ziffern
		freigabe_image= tk.getImage("b2.jpg");
		//bildfeld[0]=getImage(getCodeBase(),"b1.jpg");
		bildfeld[0]=tk.getImage("b1.jpg");
		bildfeld[1]=tk.getImage("b2.jpg");
		bildfeld[2]=tk.getImage("b3.jpg");
		bildfeld[3]=tk.getImage("b4.jpg");
		bildfeld[4]=tk.getImage("b5.jpg");
		bildfeld[5]=tk.getImage("b6.jpg");
		bildfeld[6]=tk.getImage("b7.jpg");
		bildfeld[7]=tk.getImage("b8.jpg");
		punktefeld[0]=tk.getImage("zi0.gif");
		punktefeld[1]=tk.getImage("zi1.gif");
		punktefeld[2]=tk.getImage("zi2.gif");
		punktefeld[3]=tk.getImage("zi3.gif");
		punktefeld[4]=tk.getImage("zi4.gif");
		punktefeld[5]=tk.getImage("zi5.gif");
		punktefeld[6]=tk.getImage("zi6.gif");
		punktefeld[7]=tk.getImage("zi7.gif");
		punktefeld[8]=tk.getImage("zi8.gif");
		punktefeld[9]=tk.getImage("zi9.gif");
		
		mt.addImage(bildfeld[0],0);
		mt.addImage(bildfeld[1],0);
		mt.addImage(bildfeld[2],0);
		mt.addImage(bildfeld[3],0);
		mt.addImage(bildfeld[4],0);
		mt.addImage(bildfeld[5],0);
		mt.addImage(bildfeld[6],0);
		mt.addImage(bildfeld[7],0);
		mt.addImage(punktefeld[0],0);
		mt.addImage(punktefeld[1],1);
		mt.addImage(punktefeld[2],2);
		mt.addImage(punktefeld[3],3);
		mt.addImage(punktefeld[4],4);
		mt.addImage(punktefeld[5],5);
		mt.addImage(punktefeld[6],6);
		mt.addImage(punktefeld[7],7);
		mt.addImage(punktefeld[8],8);
		mt.addImage(punktefeld[9],9);
		
		 try {
	    	 mt.waitForAll();
	        }catch (InterruptedException e)
	              {
	        	    //tue nix
	        	    e.printStackTrace();
	              }
}

Irgendwie klappt das nicht mit dem Laden der Bilder, obwohl sie mit ins JAR-File gepackt werden und zusätzlich noch im selben Ordner liegen.

Danke für Eure Hilfe(n)

Andreas[/code]
 
S

SlaterB

Gast
lächerlich,
versuche erstmal EIN EINZELNES Bild zu laden,

so muss man ja gar nicht erst anfangen..

--------

versuche mal mit
File f = new File(fileName);
System.out.println("Datei da?: "+f.exists()+", Pfad: "+f.getAbsolutePath());
 

Proggy

Bekanntes Mitglied
Habe ich getestet, es wird nur der Dateiname zurückgeliefert.

Die Java-Konsole meldet:

java.security.AccessControlException: access denied (java.io.FilePermission b2.jpg read)

Das Applet (Jar-Datei zspiel3.jar) habe ich signiert und mitsamt den Class-Dateien hochgeladen, geht weder lokal auf meinem Host-Server noch beim Provider. Direkt aus dem Eclipse heraus läuft es.

Der Html-Code sieht so aus:

Code:
<APPLET code="zahlenspiel.class" archive="zspiel3.jar,mysql-connector-java-5.0.3-bin.jar" width=800 height=600>


</applet>
[/code]
 

Wildcard

Top Contributor
Eine AccessControlException deutet darauf hin das deine Signierung falsch oder unvollständig ist.
 

Proggy

Bekanntes Mitglied
Das mag ja sein, dass diese Meldung darauf hindeutet, aber ich hab's genauso gemacht, wie im Tutorial beschrieben. Und mit der Option "verify" verifiziert, außerdem mit dem HTML-Converter das Applet-Tag in ein Object-Tag modifiziert. Bringt alles nix.
 

Wildcard

Top Contributor
Ist es möglich das das Applet(bzw. der Client) nicht die nötigen Rechte vom Webserver hat die Dateien zu laden?
 

Proggy

Bekanntes Mitglied
Hallo,

Problem gelöst, die JAR-Datei war nicht komplett, es fehlten die Klassendateien mit der Endung .class





Gruß
Andreas
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben