java.lang.NoClassDefFoundError: server_show (wrong name: ser

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hi,

ich habe mit dem JBuilder nen Applet gebastelt. Doch sobald ich es in einen anderen Ordner packe und es in einer HTML Seite aufrufen will bringt mir die Java Console die im Titel geschriebenen Fehler. Mein Applet heist "server_show" und ist in einem gleichnamigen ordner!

Ich hoffe Ihr könnt mir einen Tip geben wo mein Fehler liegt.


Danke im Voraus
 
Wenn das Applet im JBuilder lief...? Sieht auf den ersten Blick wie ein Groß-/Kleinschreibfehler aus.
Klassen sollten einen großen Anfangsbuchstaben erhalten. Vielleicht hast Du da abweichende Angaben zwischen Klasse und HTML-Datei. Im Zweifelsfall: Poste doch mal den Inhalt der HTML-Datei.
 
hi,

um das problem ein wenig genauer darzustellen:

die HTML Datein heißt: Applet1.html
im gleichen Ordner mit der HTML Datein ist ein unter ordner namens "server_show" in dem das Applet server_show liegt. Und das Applet funktioniert.

Sobald ich aber z.B. ein neues HTML Document erstelle das an einem anderen Platz als das original HTML Document(das was JBuilder erstellt wurde) erstelle und damit das Applet aufrufen will, bringt es die fehlermeldung.
 
OK! Stimmt denn der Pfad/CodeBase im HTML-File für das Applet?
Sorry, ohne HTML-Inhalt brauchen wir länger, um das Problem zu lösen.
 
so nun der HTML Code

Code:
<html>
<head>
<title>
HTML-Testseite
</title>
</head>
<body>
server_show.Applet1 erscheint in einem Java-fähigen Browser.

<applet
  codebase = ""
  code     = "server_show.class"
  name     = "TestApplet"
  width    = "200"
  height   = "40"
  hspace   = "0"
  vspace   = "0"
  align    = "middle"
>
<param name = "ip" value = "hallo">
<param name = "port" value = "">
<param name = "online" value = "">
<param name = "offline" value = "">
<param name = "pass" value = "">
<param name = "text" value = "">
</applet>
</body>
</html>
 
Nach dem HTML-Text bzw. nach dem was Du oben geschrieben hast, ist die CodeBase das Problem.
Code:
<applet code="server_show.class" codebase="server_show" width="200" height="40">
Versuche das mal.
 
das ist mir klar!

Ich will ja das es im gleichen order ist!

original sieht es nähmlich so aus:
Code:
  codebase = "."
  code     = "server_show.server_show.class"
 
Dann lege die HTML-Datei und die class-Datei in ein Verzeichnis und lösche in der HTML-Datei das codebase-Attribut.
Edit: Das wird aber nicht funktionieren, wenn in der server_show.class ein Package server_show deklariert wurde.
 
moment.. wo is jetz das problem?
du hast ein ordner MeinApplet und dadrin ist eine htmldatei view.html und im gleichen ordner ist die .class datei und es steht die pfad- bzw. packageangabe so wie oben drin geht es nicht? hast du eigentlich deine klasse einem package zugeordnet?
 
@L-ectron-X

Leider bringt er weiterhin den Fehler:
java.lang.NoClassDefFoundError: server_show (wrong name: server_show/server_show)
 
@Roar

Ich habe das applet mit dem JBuilder erstellt und der hat das applet in ein unterverzeichniss gepackt. Und wenn ich die HTML Datei anpasse und in den gleichen Ordner pache wie die .class datei dann bringt mir die Jave console die beschriebene Fehlermeldung.
 
Das beantwortet Roar's Frage aber nicht.
Hast Du ein Package namens server_show in der class-Datei deklariert?
 
wie L-ectron-X bereits gefragt hatte: hast du in der klasse ein package deklariert?
 
Die datei beginnt mit:

Code:
package server_show;

Ich denke das ist was Ihr meint! Ich bin halt Anfänger und hab seit 2 Jahren nix in Java was gemacht!
 
Wenn Du willst, dass beide Dateien (class-File und HTML-File) in einem Verzeichnis liegen, musst Du diese Zeile löschen und neu kompilieren und im HTML-File den Eintrag für die codebase löschen. Dann geht's.
 
Wenn ich die Zeile lösche läst es sich mit dem JBuilder nicht merh compilieren.

Er bringt er folgende Fehlermeldung:
Code:
"server_show.java": Fehler #: 901 : Package . in Quelle C:\Dokumente und Einstellungen\The_Makis\jbproject\server_show\src\server_show\server_show.java stimmt nicht mit Verzeichnis . überein
 
Leider kenne ich mich nicht mit JBuilder aus, aber ich vermute, dass Du nun auch die Quelldatei ein Verzeichnis höher schieben musst. Ansonsten kompilierst Du einfach mal auf der Konsole.
 
dann musst du natürlich auch die sourcedatei aus dem package (filesystem) entfernen bzw. in das root verzeichnis deiner packagestruktur verschieben.

bzw: wie wärs mal mit ner IDE? nagut oder wenigstens nem anständigen compiler der richtige fehlermeldungen auspspuckt...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben