# Webanwendung



## simon1110 (1. Mrz 2011)

Hallo,

ich bin als Informatikkaufmann tätig und habe daher nur geringe Programmierkenntnisse aus dem Schulunterrricht.

In dem Unternehmen, wo ich Angestellt bin wollen wir nun ein Java Programm auf unserer Homepage einbinden. Das Bedeutet dieses Programm wird von mit geschrieben bzw. ist teilweise schon fertiggestellt. 

Nun soll sich für unsere Gäste auf unserer Homepage per Klick auf einen Link ein neues Fenster/Pop up öffnen, wo das Programm drin ausgeführt wird und der Kunde seine Werte eintragen kann.

Das Programm soll ein Rechner werden.

Nun ist meine Frage, wie kann ich ein Java Programm dort einbinden ? Was benötige ich dazu?

Webspace haben wir genug auf den ich das Programm hochlanden kann...

Vielen Dank für eure hilfe...


----------



## L-ectron-X (2. Mrz 2011)

Wenn es direkt in einer Webseite laufen soll, kommt ein Applet in Frage. (z.B. sowas)
Soll es wahlweise auf einer Webseite oder auf dem Desktop des Benutzers laufen, kommt Webstart in Frage.


----------



## simon1110 (2. Mrz 2011)

Ich habe anbei mal mein Java Projekt mit angefügt.

Wie kann ich dieses als Applet einbinden?! ich bekomme das nicht hin, kenne mich zu wenig mit netbeans und java aus, kannst du mir dabei helfen?


----------



## L-ectron-X (2. Mrz 2011)

simon1110 hat gesagt.:


> kannst du mir dabei helfen?


Sicher, ist auch nicht schwierig.

Hab mir dein Projekt mal angesehen. Damit das was Vernünftiges wird, musst du es umbauen.
Zunächst mal, sollte deine GUI nur aus JPanels, den Komponenten und Listenern darin bestehen. Keine Frames und ähnliches. Deine Klasse Grafik erbt also nicht mehr von Frame, sondern von Panel oder JPanel.
Zum Testen nimmst du dir deine Klasse _Allgemein_, in der du einen Frame/JFrame erzeugst und dort hinein das Hauptpanel setzt.

Und dann bleibt noch die Frage, soll das Applet in jedem Fall in einem Fenster angezeigt werden, oder direkt in der Webseite liegen. Danach entscheidet sich der Rest.

Und: Entscheide dich bevor du loslegst für eine GUI-Schnittstelle. AWT oder Swing (normalerweise Swing). Nicht beides mischen.


----------



## simon1110 (7. Mrz 2011)

So also ich abe jetzt mal versucht das umzuändern jedoch bin ich nicht weit gekommen weil ich bislang noch keine erfahrung mit jpanels habe...immer nur mit frames gearbeitet.

optimal wäre es wenn es sich in einem fenster öffnet.


----------



## L-ectron-X (7. Mrz 2011)

Ich habe mal aus dem, was du angehängt hast, eine funktionierende "Appletcation", also eine Mischung aus Applet und Applikation gebaut.
Startest du die Jar-Datei aus dem dist-Verzeichnis per Doppelklick, wird das Programm als Applikation (auf dem Desktop) gestartet.
Wenn du die index.html aus dem src-Verzeichnis mit einem Browser lädst, wird das Programm als Applet ausgeführt. Die Jar-Datei muss dafür im gleichen Verzeichnis wie die HTML-Datei liegen.

Ich habe das wieder als Netbeans-Projekt im Anhang eingefügt.

Edit: Was man nun noch ändern könnte, wäre z.B. das "NullLayout" mit passenden LayoutManagern auszutauschen.. Außerdem finde ich die Farbwahl etwas zu aggressiv.


----------



## simon1110 (8. Mrz 2011)

Vielen Dank du hast mir echt super weitergeholfen, ich werde es gleich mal ausprobieren...


----------



## simon1110 (9. Mrz 2011)

Also das Applet funktioniert einwand frei... Wenn ich jetzt das Programm in die Homepage direkt einbinden will wsa muss ich dann tun?! Ist das ein großer Aufwand...?


----------



## L-ectron-X (9. Mrz 2011)

Nein, ein ziemlich geringer Aufwand.
Wenn du eine XHTML-Seite hast, musst du das object-Tag verwenden, ansonsten das applet-Tag.
Wie man es anwendet findest du in der FAQ: http://www.java-forum.org/java-faq-beitraege/114668-java-applet-webseite-einbinden.html
Sollte dir das nicht genügen und du benötigst weitere Ausführungen, meldest du dich einfach nochmal.


----------



## simon1110 (9. Mrz 2011)

Ok Danke das werde ich später mal aus probieren, immoment bin ich an der formel zur berechnung am verzweifeln.


Folgendes:

Gurte= Math.toRadians(ZW);

ZW ist eine winkel Zahl die eingegeben werden soll....

Wenn ich dort 45° eingeben kommt in netbeans ein wert mit 0,78....heraus

Bei meinem Taschenrechner jedoch 0,70.....

Was ist richtig und wo liegt der Fehler? Es handelt sich bei beiden Variablen sowohl ZW wie auchGurte um double Werte...


----------



## Dow Jones (9. Mrz 2011)

simon1110 hat gesagt.:


> Gurte= Math.toRadians(ZW);
> Wenn ich dort 45° eingeben kommt in netbeans ein wert mit 0,78....heraus
> Bei meinem Taschenrechner jedoch 0,70.....


0.78 ist richtig. Kann es sein das du mit deinem Taschenrechner versehentlich den Sinus von 45° berechnest? ;-)

sin(45°) = 0.707106...
45 Grad in Rad: 45 * 2*pi/360 = 0.785398...
sin(0.785398...) = 0.707106...


----------



## simon1110 (10. Mrz 2011)

Danke Dow Jones,

du hast recht es war ein einfacher Rechenfehler hätte ich auch selber drauf kommen können.

@L-ectron-X: Ich habe jetzt ein paar dinge in dem Actionlistner aktualisiert wie beispielsweise auch die berechnung. Muss ich jetzt erst die Jar.datei in dem dist-Ordner neu anlegen? wenn ja wie funktioniert das?!

Die änderungen werden dort nämich nicht angezeigt....


----------



## L-ectron-X (10. Mrz 2011)

simon1110 hat gesagt.:


> Muss ich jetzt erst die Jar.datei in dem dist-Ordner neu anlegen?


Gut, dass du darauf gekommen bist.
Diesen Button 
	

	
	
		
		

		
			





 klicken. Dann wird die Jar-Datei neu erzeugt.


----------



## simon1110 (10. Mrz 2011)

Ok... Vielen Dank!


----------



## simon1110 (11. Mrz 2011)

Ich möchte jetzt den Rechner direkt in die Seite einbinden...

Anbei habe ich mal das Programm mitgeschickt. aber iwie komme ich mit der ordner struktur nicht so wirklich zurecht...kannst du mir helfen?

ich lade den kompletten oderner auf die oberste ebene meines webservers....


----------



## L-ectron-X (11. Mrz 2011)

Du brauchst nur die Jar-Datei und eine HTML-Datei.
Ganz egal, wo du die Jar-Datei hinlädst, wenn du die HTML-Datei ins gleiche Verzeichnis legst, kann sie in einer Minimalversion so aussehen:

```
<html>
<head><title>Zurrmittelrechner</title></head>
<body>
<applet archive="Zurrmittelrechner.jar" code="Zurrmittelrechner.ZurrmittelrechnerApplet.class" width="600" height="580">
</applet>
</body>
</html>
```


----------



## simon1110 (14. Mrz 2011)

Hm also iwie scheint das noch nicht richtig zu funktionieren....

Wenn ich das ganze öffnen erscheint zwar ne neue seite aber der rechner wird dennoch als popup geöffnet...geht das noch anders?

siehe bild....


----------



## L-ectron-X (14. Mrz 2011)

Das ist richtig, weil in beiden Fällen ein JFrame geöffnet wird, in dem dann ein JPanel abgelegt ist.
Ich glaube, das war eingangs auch das, was du wolltest.

Man kann das natürlich umbauen, kein Problem, nur heute schaffe ich das nicht.


----------



## L-ectron-X (15. Mrz 2011)

Wenn das Applet innerhalb der Webseite liegen soll, also nicht mehr in einem Fenster erscheinen soll, brauchst du nur den Frame entfernen und dem Applet das Panel als Content einfügen.
Das könnte dann auch so ausshen:


```
package Zurrmittelrechner;

import javax.swing.JApplet;

public class ZurrmittelrechnerApplet extends JApplet {

  public void init() {
    setContentPane(new ContentPanel());
  }
}
```


----------



## simon1110 (23. Mrz 2011)

ok vielen dank das hat soweit funktioniert jetzt habe ich nur noch ein kleines problem ich hoffe ihr könnt mir da auch mit weiterhelfen.

ich benutze für die homepage das cms joomla. 

hierbei tritt ein fehler auf. im back-end bereich bekomme ich auf der seite den rechner angezeigt und dort funktioniert er auch so wie es sein soll...

im front-end auf der homepage jedoch passiert nichts, dort kommt das java symbol dass die anwendung geladen wird aber anschließend kommt nur ein fenster mit der nachricht das ein fehler vorliegt. voran kann das liegen?


----------



## ARadauer (23. Mrz 2011)

kommt drauf an welchen Editor du in Joomla verwendest, der Standard Editor oder JCE bereinigen beim speichern den HTML Code könnte sein, dass die da was vermurksen.
Du könntest bei den Einstellungen des Editor PlugIns das aussschalten 
oder den Beitrag direkt in der Datenbank bearbeiten und dort den Code an der richtigen Stelle einfügen...

Bzw bekommst du zu dem Thema in einem Joomla Forum wahrscheinlich bessere Hilfe...


----------



## simon1110 (23. Mrz 2011)

Folgende Fehlermeldung kommt...
------------------------------------------------------------------------------------
Laden: Klasse Zurrmittelrechner/ZurrmittelrechnerApplet.class nicht gefunden
java.lang.ClassNotFoundException: Zurrmittelrechner.ZurrmittelrechnerApplet.class
	at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Ausnahme: java.lang.ClassNotFoundException: Zurrmittelrechner.ZurrmittelrechnerApplet.class


----------



## L-ectron-X (24. Mrz 2011)

Zeige bitte nochmals deinen HTML-Code. Hast du das Package immer noch im Java-Code? Hast du den Speicherort verändert?
Auch mal hier hinein schauen: http://www.java-forum.org/java-faq-beitraege/114668-java-applet-webseite-einbinden.html


----------



## simon1110 (24. Mrz 2011)

```
<html>
<head>
<title>Zurrmittelrechner - Startseite</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<applet archive="Zurrmittelrechner/dist/Zurrmittelrechner.jar" code="Zurrmittelrechner.ZurrmittelrechnerApplet.class" height="580" width="600">
</applet>
</body>
</html>
```


----------



## L-ectron-X (24. Mrz 2011)

Das archive-Attribut haut wahrscheinlich nicht hin. Nimm die Jar-Datei aus dem dist-Verzeichnis, lege dir eine passende Verzeichnisstruktur an und lies auch noch mal meinen obigen Link.


----------



## Papageno (27. Jul 2011)

Das ist ja ziemlich genau das, wonach ich seit Tagen suche.

Ich wollte mir erlauben dies als Vorlage zu benutzen und den Thread hier als Howto umzusetzen. Leider scheitere ich dabei am Import der Zip Datei in Eclipse (Bin noch ein Keimling was Eclipe betrifft). 
Kann mir bitte jemand verraten wie ich das auf die Reihe bekomme. Alle Importmöglichkeiten habe ich bereits probiert (File Import, Archiv File, Project)

Besten Dank


----------

