Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Sonstiges » Off-Topic » Java Applet » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (4): [1] 2 3 nächste » ... letzte » Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Java Applet
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Java Applet Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich möchte ein Java Applet im Firefox unter Linux testen. In Eclipse gibt der Applet viewer das Applet auch wieder. Im Firefox erhalte ich die Fehlermeldung "NullPointerException" oder "Applet nicht initialisiert."

Der Code ist aus einem Trainingsbuch, wobei ich (nachdem es nicht funktionierte) 2 Dinge verändert habe.

public vor class eingefügt, dann erst funktionerte der Appletviewer.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
import java.awt.Graphics;

public class HelloWorldApplet extends java.applet.Applet{

 public void paint(Graphics g) {
     g.drawString("Hello World", 5, 25);
 }
}


Hier applet-tag vor body geschlossen, im Buch wird dies erst nach body geschlossen verwirrt (habe ich gedreht) Und warum wird der Paragraph nicht geschlossen verwirrt

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
<html>
<head>
<title>Hello to everyone!</title>
<body>
<p>My java Applet says:<br>
<applet code="HelloWorldApplet.class" width=150 height=25>
</applet>
</body>
</html>


Wie ihr am Hello World seht, bin ich mit Java noch ganz am Anfang, wer kann mir weiterhelfen? Wink

Kann es an Firefoxeinstellungen liegen?
17.01.2014 10:28 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

RE: Java Applet Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Bis zur Verabschiedung des HTML 4.0-Standards, war das Applet-Tag zum Einbinden von Java-Applets in Webseiten vorgesehen. Inzwischen gilt es als veraltet und wurde vom W3C mit dem Object-Tag ersetzt. In HTML5 funktioniert es gar nicht mehr.

von wiki.byte-welt.net
Da steht auch, wie es richtig geht, nämlich mit object

Das Fehlen von </p> kommt mir auch komisch vor.


edit: etwas rumprobiert:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
<html>
  <head>
    <title>Hello to everyone!</title>
  <body>
    <p>My java Applet says:<br>
    object:<br>
    <object classid="java:HelloWorldApplet.class" 
      codetype="application/java-vm" width=200 height=200>
    </object>
    <br> <br>
    applet:<br>
    <applet code="HelloWorldApplet.class" width=200 height=200>
    </applet>
    </p>
  </body>
</html>

Das Problem war, dass das Fenster etwas zu schmal war, um mitzuteilen, dass hier eine Applet wäre, die aber gesperrt wurde.

Und ich jebe Karlito Recht, Java hat höchstens auf deinem Rechner etwas verloren, aber nicht im Internet

__________________
Syntax Highlighting fürs Board (Link)

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von eulerscheZahl: 17.01.2014 14:49.

17.01.2014 14:17 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo tigerbine,

hoher Besuch vom Matheboard? Augenzwinkern

Aaalso: ich habe mal ein wenig rumprobiert. Es ist immer notwendig, die Ausführung des Java-Plugins für Firefox und Chrome freiz zu geben. Dazu erscheint normalerweise eine Freigabenachfrage. Wenn nicht, im Firefox die Tastenkombination "Strg-Shift-A" betätigen (Vorher auf irgendeine freie Fläche im Browser Klicken). Dann Unter Plugins das Java-Plugin aktivieren.

Unter Windows ist es zusätzlich noch notwendig, Java zu erlauben, Applets auszuführen. Dazu in der Windows-Systemsteuerung -> Java im Reiter "Sicherherit" den Pfad des Applets zur Ausnahmeliste hinzufügen. Alternativ (nicht zu empfehlen), sollte auch die Herabesetzung der Sicherheitsstufe funktionieren.

Allgemein ist zu sagen: Die Entwicklung von Java-Applets ist mittlerweile nicht mehr zu empfehlen. Wenn es geht sollten andere Technologien Anwendung finden. Beispielsweise HTML5 + JavaScript...

Bei Rückfragen, einfach rückfragen Augenzwinkern

Edit: der nicht geschlossene <p>-Tag ist definitiv ein Fehler. Vielleicht ist es besser das Oracle-Tutorial zu verwenden: http://docs.oracle.com/javase/tutorial/d...plet/index.html

VG,

Karlito
17.01.2014 14:45 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke an Euch. :wave:

Es ist ein zugegeben schon älteres Lehrbuch, also sicher vor HTML5. Leider auch mit einigen Tippfehlern, aber es liest sich für einen Einsteiger ganz gut, gerade weil es in Tageslektionen aufgebaut ist.

Dann teste ich die Beispiele nur im Applet Viewer, eh ich da Tür und Tor für was aufmache ...

Für HTML5, CSS3 und Java Script liegt schon ein anderes Buch bereit :-)

Da habe ich ein anderes Problem. --> neuer Thread? Oder im OT erlaubt?

Ich bin auch in Linux unterwegs, aber nicht als root. Der Xampp Server hat nun seine Verzeichnisse so gelegt, dass man Rootrechte braucht.

Als BestPractise habe ich den Umweg über den Dokumente-Ordner genommen. Dort schreibe ich das Coding mit gedit und kopiere es über den Terminal mit Rootrechten (sudo su, oder so ...) in den xampp ordner.

Habe ich irgendwie die Möglichkeit meinem Account mehr Rechte zu geben? Bei der Anmeldung kann ich nur mich oder Gastzugang auswählen.
17.01.2014 16:46 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo tigerbine,

Du kannst hier gerne Deine Fragen fortsetzen und brauchst keinen neuen Thread aufmachen.

Ich bin leider nicht so fit, was admin-Geschichten angeht. Eine einfache Variante, um ein Verzeichnis in XAMPP für Testzwecke freizugeben ist in deinem Homeverzeichnis ein Verzeichnis "public_html" (oder beliebig anders) anzulegen und im www-Ordner des XAMPP einen link darauf anzulegen.

Ich gehe mal davon aus, dass du Ubuntu oder Debian am laufen hast. Dort ist es normalerweise so, dass der Webserver unter dem Benutzer und der Gruppe www-data läuft. Somit geben wir der Gruppe www-data zugriff auf eines unserer Verzeichnisse und binden dies per Symbolischen Link in das Dokumentenverzeichnis von Apache ein (normalerweise /var/www)

Beispiel:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
cd ~                                    # wechsel in das home-verzeichnis
mkdir public_html
chown tigerbine:www-data public_html    # anpassung der Besitzmerkmale
chmod 755 public_html                   # berechtigungen für den zugriff auf das Verzeichnis
touch public_html/index.html            # anlegen einer index-datei, damit das verzeichnis nicht aufgelistet wird
chmod 644 public_html                   # anpassung der zugriffsrechte auf die index.html
sudo ln -s tigerbine /var/www/tigerbine # anlegen eines symbolischen links zu dem neuen verzeichnis


Ich hoffe das passt.

VG,

Karlito
17.01.2014 23:45 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
ed209
Routinier


Dabei seit: 07.09.2006
Beiträge: 324

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hi Tigerbine Wink

Eine einfache Lösung unter Ubuntu wäre gksudo, das funktioniert wie sudo aber eben für graphische Anwendungen.
Aber denk dran, es nur für simple Programme zu verwenden die zur Distribution gehören (gedit sollte kein Sicherheitsrisiko sein, also kein Problem).

Alternativ könntest du die Verzeichnisse die Du brauchst einer Gruppe zuordnen und dann deinen Benutzer dieser Gruppen hinzufügen. (Hab ehrlich gesagt selber keine Ahnung wie man das macht, aber gibt es Anleitungen zu im Internet).

Meine persönliche Lösung ist, einen Kommandozeilen-Editor zu benutzen. (vim ist besser als emacs). Damit ist man langfristig flexibler, aber das ist eine große Umgewöhnung.

Gruß,
ED209 (ehemals known as PrototypeX29A im Matheboard)

PS: Ich hatte gehofft Applets wären tot.
18.01.2014 10:18 ed209 ist offline E-Mail an ed209 senden Beiträge von ed209 suchen Nehmen Sie ed209 in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke für eure Antworten. :-)

Dann kann ich Applet Lektionen aus dem java-Buch ja streichen.

xampp ist für html5/css3/javascript Buch gedacht.
18.01.2014 16:18 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

In einem anderen JAVA Buch lese ich etwas von Swing, Servelts, DAtenbankprogrammierung. Die Themen sind im Gegensatz zu Applets noch aktuell?
20.01.2014 11:41 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Swing: graphische Benutzeroberfläche
Servlets: Java-Programme, die auf einem Server laufen, um eine Seite zu generieren (nach dem Prinzip funktionert z.B. die auf dich zugeschnittene Ergebnisseite einer Suchmaschine).

Ich kann dir leider nicht sagen, ob man dafür gewöhnlich Java verwendet (im Studium haben wir mal ein wenig mit JSP gearbeitet), die Themen selbst sind aber auf jeden Fall noch aktuell.

__________________
Syntax Highlighting fürs Board (Link)
21.01.2014 06:09 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke.

Dann hätte ich eine konkrete Frage.

ich möchte mir eine Benutzereingabe (Buchstabe) auch als Buchstaben wieder ausgeben lassen.

Nun habe ich gelesen, dass System.in.read() aber einen Integer-Wert liefert. Wie wandle ich diesen um, so dass ich mit System.out.println wieder den eingegebenen Buchstaben sehe?
21.01.2014 21:45 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ein int hat 32 Bit, wie willst du da einen ganzen String reinbringen?
mit read() geht es nicht, da werden nicht einmal Buchstaben zugelassen

Du brauchst einen Reader:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) {
	    InputStreamReader isr = new InputStreamReader(System.in);
	    BufferedReader br = new BufferedReader(isr);
	    System.out.print("Eingabe: ");
	    String eingabe = null;
		try {
			eingabe = br.readLine();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	    System.out.println(eingabe);
	}
}


__________________
Syntax Highlighting fürs Board (Link)
22.01.2014 06:12 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke, verstehe den Code aber noch nicht. So weit bin ich noch nicht im Lehrbuch. geschockt

Kommt vielleicht ja noch. Augenzwinkern
22.01.2014 10:14 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
Matze84
Eroberer


Dabei seit: 14.10.2012
Beiträge: 73

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich persönlich kann dir da "Java ist auch eine Insel" in Version 7 empfehlen...

http://openbook.galileocomputing.de/javainsel/

Ich selbst habe mir das Buch gekauft, weil es dann einfacher zu lesen ist aber im OpenBook geht das auch gut. (Habe ich zumindest zu beginn gemacht, bevor ich mich zum Kauf entschieden habe)

Da wird das auch mit dem Reader, Swing, JDBC (Datenbanken in Java) erklärt oder zumindest angerissen.

XAMPP brauchst du für HTML5 / CSS3 / Javascript meines erachtens NICHT.

für diese 3 Sachen reicht theoretisch schon ein einfacher Editor wie z.B.
notepad++

XAMPP wird dann interessant, wenn du PHP und Datenbanken (Bsp.: MySQL) nutzen willst.
23.01.2014 21:24 Matze84 ist offline Beiträge von Matze84 suchen Nehmen Sie Matze84 in Ihre Freundesliste auf
tigerbine
Grünschnabel


Dabei seit: 03.06.2007
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Danke für die Rückmeldung.

Ich hätte eine Frage zu Interfaces.

code:
1:
2:
3:
public interface SchokoRiegel {
boolean istLecker();
}


Was kann man damit machen. Ich dachte, Klassen können Interfaces implementieren.

code:
1:
2:
3:
4:
5:
public class SchokoLadenKeksGemisch implements SchokoRiegel {
@Override
public boolean istLecker(){
return true;
}


das heißt, das die Methode von dem Interface implementiert werden muss. Folgendes verstehe ich dann aber nicht.

code:
1:
2:
3:
4:
5:
public class SchokoladenSuechtiger {
public void essen (SchokoRiegel schokoriegel) {
if(schokoriegel.istLecker()) {
System.out.println("Boah, lecker");
}


Was soll SchokoRiegel schokoriegel ssein. Da kann man doch keine Instanz von bilden ... verwirrt

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von tigerbine: 29.01.2014 19:48.

29.01.2014 19:40 tigerbine ist offline Beiträge von tigerbine suchen Nehmen Sie tigerbine in Ihre Freundesliste auf
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo,

ich finde das Beispiel ein wenig schlecht gewählt. Versuchen wir es mal mit einer anderen Analogie:

Alle Objekte, welche ein gemeinsames Interface haben, können in einer gewissen Art auf dem selben weg benutzt werden. So zum beispiel, Dinge, die man aufschließen kann. Alle implementieren ein Schloss...

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
 
public interface ISchloss {
	void aufschliessen();
}

public class Tresor implements ISchloss {
	@Override
	public void  aufschliessen(){
		// Ein sehr komplitierter Aufschliessalgorithmus
		System.out.println("Tja, leider ebbe hier.");
	}
}

public class Haus implements ISchloss {
	@Override
	public void  aufschliessen(){
		// Ein weniger komplitierter Aufschliessalgorithmus
		System.out.println("Willkommen im Haus");
	}
}


public class Main {
	public static void main(string[] args){
		Tresor tresor = new Tresor();
		Haus haus = new Haus();

		//beginne Raubzug
		schliesseAuf(Haus);		//Haus aufschliessen (Funktioniert, da Haus ein Schloss hat)
		schliesseAuf(Tresor); //Tresor auffschliesse (Funktioniert, da Tresor ein Schloss hat)
	}

	//Nimmt beliebige Objekte entgegen, die ein Schloss haben
	static void schliesseAuf(ISchloss ding){
		ding.aufschliessen();
	}
}


Anstatt das Interfache ISchloss zu nennen, hätte man es auch IAufschlissbar nennen können. Damit wird auch klar, dass alle Gegenstände, die das Interface implementieren aufschließbar sind.

Ich hoffe das macht es deutlich?

VG,

Karlito
29.01.2014 20:06 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
Seiten (4): [1] 2 3 nächste » ... letzte » Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Sonstiges » Off-Topic » Java Applet