ich habe einen Quellcode in Eclipse implementiert und in Klassen unterteilt also eine main klasse, eine gui die die Oberfläche macht usw.
Das muss ich jetzt allerdings mithilfe eines Applets auf eine html seite bringen... Auf dem Gebiet hab ich keinen plan und such jetzt schun viel zu lange umher...
Wie kann man das machen? die gui werd ich wohl vergessen können so mit JFrame oder? Wie bindet man so ein Eclipse projekt als applet ein, und ist es möglich die Klassen beim applet beizubehalten?
code gibt die Klasse an, die von Applet/JApplet erbt, also quasi die Mainklasse, archive dem relativen Pfad zur Jar vom Aufrufpunkt aus (in dem Fall wenn die Jar im Ordner "htdocs\inlogged" liegt), die Param beliebige Parameter. Applets unterstützen auch Window-Komponenten.
<appletcode="main.class"width="400"height="400"archive="gogesjar.jar"name="Goges"alt="AU AU WEEEEEEH HOPPS Laden verkackt"></applet>
so hab ich das auf html....
und der quellcode der main ist:
Java:
importjava.applet.Applet;publicclass main extendsApplet{publicstaticvoidmain(String[] args){
gui g=newgui();}}
erhalte beim aufrufen der webseite dann aber den Fehler
Code:
"java.lang.reflect.InvocationTargetException
at com.sun.deploy.util.DeployAWTUtil.invokeAndWait(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.runOnEDT(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)
Caused by: java.lang.ClassCastException: main cannot be cast to java.applet.Applet
at sun.plugin2.applet.Plugin2Manager$12.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Ausnahme: java.lang.reflect.InvocationTargetException"
sofern eine Klasse nicht in einem package liegt kann sie sowieso von anderen kaum benutzt werden,
und hast du zufällig main früher schon mal kompiliert, als es noch kein Applet war? vielleicht alte .class-Files,
Klassen auch immer groß schreiben!
fange neu an mit einer Klasse test.TestApplet, wobei test das package ist
Ein Applet kann zwar eine main enthalten, wodurch es auch als Anwendung gestartet werden kann, wenn es als Applet gestartet wird, werden aber 4 andere Methoden zur Steuerung verwendet: Lebenszyklus eines Applets
Versuch mal, die Main in ein package zu legen, keine zu verwenden bringt oft Probleme mit (kannst die Klassen z. B. nirgends importieren).
PS: Am Besten Klassennamen immer groß, damit kannst du und jeder andere sie leichter von Methoden und Variablen unterscheiden.
hast du kein Interesse daran in Lehrbüchern Grundlagen zu lesen, wie ein Applet überhaupt funktioniert?
dir Beispiele im Internet anzuschauen?
die main-Methode schreibt sich übrigens weiter klein, auch wenn die Klasse groß geschrieben wird, oje oje
edit:
der Code von Volvagia weiter unten ist allerdings auch nicht sehr hilfreich, main braucht es überhaupt nicht,
sorry wenn ich mal nur meckern kann