Applet Applet das auf fremden Libraries basiert einbinden?

Darky^

Aktives Mitglied
Hallo!

Ich stell mit gerade die Frage, wie ich ein Webapplet, dass auf fremden Libraries basiert in eine Seite einbinden kann, ich bekomm immer folgende Meldung:

Code:
Java Plug-in 1.6.0_24
Verwendung der JRE-Version 1.6.0_24-b07 Java HotSpot(TM) Client VM
Home-Verzeichnis des Benutzers = C:\Users\Thomas
----------------------------------------------------
c:   Konsole löschen
f:   Objekte in Finalisierungswarteschlange finalisieren
g:   Speicherbereinigung
h:   Diese Hilfemeldung anzeigen
l:   ClassLoader-Liste ausgeben
m:   Speicherbelegung anzeigen
o:   Protokollierung auslösen
q:   Konsole ausblenden
r:   Richtlinien-Konfiguration neu laden
s:   System- und Bereitstellungseigenschaften ausgeben
t:   Threadliste ausgeben
v:   Thread-Stack ausgeben
x:   ClassLoader-Cache löschen
0-5: Trace-Stufe auf <n> setzen
----------------------------------------------------


java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	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.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$12.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.net.ProtocolCommandListener
	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)
	... 20 more
Ausnahme: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	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.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$12.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.net.ProtocolCommandListener
	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)
	... 20 more
Ausnahme: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
 
Sorry bitte helft mir 🙁 komm nicht klar:

HTML:
<H3><HR WIDTH="100%">Applet HTML Page<HR WIDTH="100%"></H3>

<P>
<APPLET codebase="classes" code="examplefiletransfer/FileTransferApp.class" archive="Externlib.jar" width=350 height=200></APPLET>
</P>

<HR WIDTH="100%"><FONT SIZE=-1><I>Generated by NetBeans IDE</I></FONT>
</BODY>
</HTML>


Wieso erkennt er da trotzdem die Bibliothek "Externlib.jar" nicht und in welchen Verzeichniss muss die sein? (hab alle ausprobiert).

Mfg
 
Dein Applet-Tag ist in den Attributen codebase und code falsch.
Schau dir noch mal die FAQ an, da ist das alles erklärt und auch die richtige Schreibweise gezeigt.
 
So hab mir jetzt nochmal eine Anleitung angesehen und klappt noch immer nicht 🙁:

PHP:
<!DOCTYPE html>
<html> 
<head> 
    <meta charset="utf8" />
    <title>File Javaapplet</title>
</head> 
<body> 
    <object type="application/x-java-applet;version=1.4.1" name="jsap" id="jsap" width="600" height="400">
        <param name="archive" value="ExampleFiletransfer.jar, mysql-connector-java-5.1.9-bin.jar, commons-net-2.2.jar"> 
        <param name="code" value="applet.FileTransferApp">
        <param name="mayscript" value="yes"> 
        <param name="scriptable" value="true"> 
    </object> 
</body> 
</html>

Code:
Java Plug-in 1.6.0_24
Verwendung der JRE-Version 1.6.0_24-b07 Java HotSpot(TM) Client VM
Home-Verzeichnis des Benutzers = C:\Users\Thomas_2
----------------------------------------------------
c:   Konsole löschen
f:   Objekte in Finalisierungswarteschlange finalisieren
g:   Speicherbereinigung
h:   Diese Hilfemeldung anzeigen
l:   ClassLoader-Liste ausgeben
m:   Speicherbelegung anzeigen
o:   Protokollierung auslösen
q:   Konsole ausblenden
r:   Richtlinien-Konfiguration neu laden
s:   System- und Bereitstellungseigenschaften ausgeben
t:   Threadliste ausgeben
v:   Thread-Stack ausgeben
x:   ClassLoader-Cache löschen
0-5: Trace-Stufe auf <n> setzen
----------------------------------------------------


java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	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.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.newInstance0(Unknown Source)
	at java.lang.Class.newInstance(Unknown Source)
	at sun.plugin2.applet.Plugin2Manager$12.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.net.ProtocolCommandListener
	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)
	... 20 more
Ausnahme: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/apache/commons/net/ProtocolCommandListener
Laden: Klasse applet.FileTransferApp nicht gefunden
java.lang.ClassNotFoundException: applet.FileTransferApp
	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: applet.FileTransferApp
Media Fully Loaded
Laden: Klasse applet.FileTransferApp nicht gefunden
java.lang.ClassNotFoundException: applet.FileTransferApp
	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: applet.FileTransferApp
Laden: Klasse applet.FileTransferApp nicht gefunden
java.lang.ClassNotFoundException: applet.FileTransferApp
	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: applet.FileTransferApp
 
Sich mit einem Applet zu einer Datenbank verbinden zu wollen, ist meist ein ganz dummer Gedanke.
Das solltest du auf keinen Fall versuchen. Das ist viel zu unsicher.
Man kann den Quellcode einsehen und die Datenbankzugangsdaten ausspähen...

Aber vielleicht noch etwas zur Lösung des Problems:
1. Alle Jar-Dateien müssen für ein funktionierendes Applet signiert sein. Sonst geht gar nichts.
2. Bleib vorerst beim Applet-Tag, der ist am kompatibelsten.
3. Wo liegen denn deine Jar-Dateien, relativ zur HTML-Datei gesehen?
 
1. Alle Jar-Dateien müssen für dein Applet signiert sein. Sonst geht gar nichts.
Hab ich jetzt noch nicht, aber dadurch müssten sie doch trotzdem mal gefunden werden?

3. Wo liegen denn deine Jar-Dateien, relativ zur HTML-Datei gesehen?
Also die Jar Dateien liegen im gleichen Ordner wie die Html im Ordner (Projektname)ExampleFiletransfer/Dist

Andere Frage mein App besteht aus 7 Klassen und in der Jar-Datei die Netbeans generiert hat sind nur mehr 5 und die haben die Namen: FileTransferApp.class, FileTransferApp$1.class, FileTransferApp$2.class, FileTransferApp$3.class.

FileTransferApp.class ist die Main Klasse, aber meine anderen Klassen tragen eigentlich andere Namen, stimnmt das dann?.


Achja zur Sicherheit, ja bin mir bewusst, dass es nicht sicher ist aber das ist bei dem Projekt egal 😉.

Danke im Voraus.
 
Deiner Beschreibung nach, müsste das Applet-Tag so aussehen:
HTML:
<applet archive="ExampleFiletransfer.jar, mysql-connector-java-5.1.9-bin.jar, commons-net-2.2.jar" code="applet.FileTransferApp.class" width="600" height="400">
</applet>
Aber das code-Attribut stimmt nur, wenn die Appletklasse deiner Jar-Datei wirklich in einem Package applet liegt.

Wenn deine Klassen andere Namen haben, sollten die auch im Jar-Archiv erscheinen. Drücke mal [Shift]+[F11] zur Neuerstellung des Archivs, dann sollten sie mit hineinkopiert werden.
Die Klassen die auf $1.class, $2.class, $3.class usw. enden, werden vom Compiler aus anonymen inneren Klassen erzeugt. Meistens handelt es sich dabei um Eventhandling.
 
Jetzt hab ich leider beim Jar erstellen einen Fehler (vll lags auch daran das nichts funktioniert..):

Code:
init:
deps-clean:
Updating property file: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\built-clean.properties
Deleting directory C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build
clean:
init:
deps-jar:
Created dir: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build
Updating property file: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\built-jar.properties
Created dir: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\classes
Created dir: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\empty
Compiling 7 source files to C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\classes
Note: [COLOR="Red"]C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\src\applet\FileTransferApp.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.[/COLOR]
Copied 1 empty directory to 1 empty directory under C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\build\classes
compile:
Created dir: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\dist
C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\${libs.commonsnet.classpath} is a directory or can't be read. Not copying the libraries.
Not copying the libraries.
Building jar: C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\dist\ExampleFiletransfer.jar
[COLOR="red"]To run this application from the command line without Ant, try:
java -jar "C:\Users\Thomas_2\Dropbox\Schule\PRE\Esasdsdsdsad\ExampleFiletransfer\dist\ExampleFiletransfer.jar"
jar:[/COLOR]
BUILD SUCCESSFUL (total time: 0 seconds)
 
Hmm naja... das ist kein Fehler, nur eine Warnung, dass du im Code veraltete Klassen und/oder Methoden benutzt.
Das ist erst mal sekundär. Für alle deprecated Klassen/Methoden wurden meistens neue, bessere Alternativen geschaffen.
Das Programm sollte trotzdem vollständig sein und funktionieren - u.U. aber mit Fehlern, die aus der Benutzung des veralteten Codes herrühren können.

Zumindest wurden jetzt 7 Dateien verarbeitet. Allerdings fehlen offenbar die benötigen externen Jar-Dateien im dist-Verzeichnis. Die must du nun manuell dorthin kopieren.
Man kann Netbeans auch so einstellen, dass das automatisch miterledigt wird.
 
Danke, jetzt komm ich schonmal zu einem grauen Kasten ohne Fehlermeldung, was wohl daran liegt, dass ich die Jar Dateien noch nicht signiert habe?


Mfg
 
In der Console sollten dann aber Fehlermeldungen ausgegeben werden.
Ob was in der Console ausgegeben wird kannst du ja mal testen, indem du in deiner init()-Methode des Applets einfach mal eine Textausgabe auf der Console machst. Bspw.
Code:
System.out.println("Applet - init()");
 
Vielen dank, ich bekomm folgende Ausgaben:

Code:
java.lang.reflect.InvocationTargetException
	at java.awt.EventQueue.invokeAndWait(Unknown Source)
	at applet.FileTransferApp.init(FileTransferApp.java:37)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.awt.AWTPermission setAppletStub)
	at java.security.AccessControlContext.checkPermission(Unknown Source)
	at java.security.AccessController.checkPermission(Unknown Source)
	at java.lang.SecurityManager.checkPermission(Unknown Source)
	at java.applet.Applet.setStub(Unknown Source)
	at applet.FileTransferApp.initComponents(FileTransferApp.java:85)
	at applet.FileTransferApp.access$000(FileTransferApp.java:32)
	at applet.FileTransferApp$1.run(FileTransferApp.java:39)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
java.lang.reflect.InvocationTargetException
	at java.awt.EventQueue.invokeAndWait(Unknown Source)
	at applet.FileTransferApp.init(FileTransferApp.java:37)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied (java.awt.AWTPermission setAppletStub)
	at java.security.AccessControlContext.checkPermission(Unknown Source)
	at java.security.AccessController.checkPermission(Unknown Source)
	at java.lang.SecurityManager.checkPermission(Unknown Source)
	at java.applet.Applet.setStub(Unknown Source)
	at applet.FileTransferApp.initComponents(FileTransferApp.java:85)
	at applet.FileTransferApp.access$000(FileTransferApp.java:32)
	at applet.FileTransferApp$1.run(FileTransferApp.java:39)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
 
Die InvocationTargetException hier als Folge der AccessControlException geworfen. Meiner Meinung nach musst du jetzt signieren. Und zwar alle Jar-Dateien.
In der FAQ findest du ein kleines Batchtool dafür.
 
Signiern geht leider auch nicht:

Code:
Der Befehl "keytool" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
 
Ja hab das mit dem Signieren hinbekommen und schon wieder andere Fehler oO:

Code:
java.lang.reflect.InvocationTargetException
	at java.awt.EventQueue.invokeAndWait(Unknown Source)
	at applet.FileTransferApp.init(FileTransferApp.java:37)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: org/netbeans/lib/awtextra/AbsoluteLayout
	at applet.FileTransferApp.initComponents(FileTransferApp.java:86)
	at applet.FileTransferApp.access$000(FileTransferApp.java:32)
	at applet.FileTransferApp$1.run(FileTransferApp.java:39)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
Caused by: java.lang.ClassNotFoundException: org.netbeans.lib.awtextra.AbsoluteLayout
	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)
	... 17 more

Ich verzweifle bald 😀

Danke im Voraus.
 
Du benutzt AbsoluteLayout. Das ist eine NetBeans eigene LayoutManager-Bibliothek.
Die musst du natürlich auch ausliefern (ins dist-Verzeichnis kopieren) und ins archive-Attribut des applet-Tags aufnehmen.
 
Sorry dafür das ich noch einmal eine Frage habe:

Und zwar lese ich im Applet eine Id aus:

Code:
public void init() {
         project_id =  Integer.parseInt(getParameter("project_id"));
        try {
            java.awt.EventQueue.invokeAndWait(new Runnable() {
                public void run() {
                    initComponents();

                }
            });
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

Und habs sie im HTML Code definiert:

Code:
<applet archive="ExampleFiletransfer.jar, mysql-connector-java-5.1.9-bin.jar, commons-net-2.2.jar, AbsoluteLayout.jar" code="applet.FileTransferApp.class" width="671" height="326">
 <param name="project_id" value="1"> 
</applet>

trotzdem ist die Project_id dann immer null?

Achja und hast du vll einen Tipp wie man das mit den Parameter in Netbeans am besten testen kann immer neu compilieren ist auch etwas umständlich.

Mfg

//€: Hat sich erledigt 🙂 Danke.
 
Zuletzt bearbeitet:

Zurück
Oben