VNC-Viewer-Applet von Proxmox mag nicht so recht.

Status
Für weitere Antworten geschlossen.

herrhannes

Enthusiast
Thread Starter
Mitglied seit
28.10.2006
Beiträge
6.687
Moin Leute,
bekomme mit oben genanntem Applet folgende Fehlermeldung auf der Java-Konsole:
Code:
Laden: Klasse VncViewer.class nicht gefunden
java.lang.ClassNotFoundException: VncViewer.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: VncViewer.class

Der Quelltext der zugehörigen HTML-Datei ist:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<html><head><title>win2k8r2 - Proxmox Console</title></head><script language=JavaScript>
 function wresize() {

   var ps;
   try { 
     ps = document.vncapp.getPreferredSize();
   } catch (e) {
     setTimeout ("wresize()", 100);
     return;
   }

   var aw = ps.width;
   var ah = ps.height;
   var oh;
   var ow;

   if (!window.innerHeight && document.body && document.body.offsetHeight) {
     // hack for IE
     oh = document.documentElement.clientHeight;
     ow = document.documentElement.clientWidth;
   }  else {
     // other browsers
     oh = window.innerHeight;
     ow = window.innerWidth;
   }

   document.vncapp.style.height = ah + "px";
   document.vncapp.style.width = aw + "px";

   var offsetw = aw - ow + 2;
   var offseth = ah - oh + 2;


   if (offsetw !== 0 || offseth !== 0) {
     try { window.resizeBy(offsetw, offseth); } catch (e) {}
   }

   setTimeout ("wresize()", 1000);
 }


</script>
<body id=vnc style='margin:0px;' onLoad='javascript:setTimeout("wresize()", 500);'>
<div style='border: 1px solid;'><APPLET id=vncapp CODE='VncViewer.class' ARCHIVE='/vncterm/VncViewer.jar' width='100%' height='100%' vspace=0 hspace=0>
<param name=PORT value='5900'>
<param name=PASSWORD value='Passwort'>
<param name='Show Controls' value='Yes'>
<param name='Show Offline Desktop' value='No'>
</APPLET></div><body></html>

Witzigerweise ist die VncViewer.jar unter dieser Adresse zu downloaden, entpackt scheint sie auch die VncViewer.class zu enthalten. (Kenne mich nicht wirklich mit Java aus.)

Aaaber: Wieso versucht er dann die .class ganz wonander zu suchen?

Apache2 sagt nämlich:
Code:
[Mon Nov 28 21:56:40 2011] [error] [client ich] File does not exist: /usr/share/pve-manager/root/openvz/VncViewer.class
[Mon Nov 28 21:56:40 2011] [error] [client ich] File does not exist: /usr/share/pve-manager/root/openvz/VncViewer

Was läuft da schief?

Edit: Die selbe Fehlermeldung auf der Java-Konsole kommt, wenn ich die .jar in einer lokalen .htm-Datei einbinde.

---------- Beitrag hinzugefügt um 00:00 ---------- Vorheriger Beitrag war Gestern um 22:14 ----------

So,
ich habe jetzt mal die entsprechenden Dateien angepasst, so dass die .class gefunden wird. Und natürlich bin ich auf den nächsten Fehler gestoßen:
Code:
Initializing...
Connecting to proxmox, port 5900...
Connected to server
RFB server supports protocol version 3.8
netscape.javascript.JSException: No such method "PVE_vnc_console_event" on JavaScript object
	at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
	at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
	at sun.plugin2.main.client.MessagePassingJSObject.call(Unknown Source)
	at com.tigervnc.vncviewer.VncViewer.init(VncViewer.java:154)
	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Ausnahme: netscape.javascript.JSException: No such method "PVE_vnc_console_event" on JavaScript object
Using RFB protocol version 3.8
Performing standard VNC authentication
VNC authentication: success
Desktop name is VNC Command Terminal
Desktop size is 745 x 400
Using Tight/ZRLE encodings
Warning: Java 2D API is not available
java.lang.NullPointerException
java.lang.NullPointerException
	at com.tigervnc.vncviewer.VncCanvas.updateFramebufferSize(VncCanvas.java:317)
	at com.tigervnc.vncviewer.VncCanvas.setPixelFormat(VncCanvas.java:262)
	at com.tigervnc.vncviewer.VncCanvas.<init>(VncCanvas.java:166)
	at com.tigervnc.vncviewer.VncViewer.createCanvas(VncViewer.java:311)
	at com.tigervnc.vncviewer.VncViewer.run(VncViewer.java:193)
	at java.lang.Thread.run(Unknown Source)
RFB socket closed
Exception in thread "Thread-11" netscape.javascript.JSException: No such method "PVE_vnc_console_event" on JavaScript object
	at sun.plugin2.main.client.MessagePassingJSObject.newJSException(Unknown Source)
	at sun.plugin2.main.client.MessagePassingJSObject.waitForReply(Unknown Source)
	at sun.plugin2.main.client.MessagePassingJSObject.call(Unknown Source)
	at com.tigervnc.vncviewer.VncViewer.fatalError(VncViewer.java:1041)
	at com.tigervnc.vncviewer.VncViewer.run(VncViewer.java:281)
	at java.lang.Thread.run(Unknown Source)

Was habe ich dem Ding nur angetan?
Wieso nur versucht es diese doofe nicht vorhandene Methode aufzurufen?

---------- Beitrag hinzugefügt um 00:28 ---------- Vorheriger Beitrag war Gestern um 22:14 ----------

An sich funktioniert das Applet einwandfrei, nur diese äußere Beeinflussung durch was auch immer mag es anscheinend nicht. Aber wo versteckt sich das?
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Nach dem zehnten Neuinstallieren hatte ich plötzlich ein anderes Applet im enstprechenden Ordner. Nachdem ich rausgefunden habe, dass man den Java-Cache extra löschen muss, geht es wieder :fresse:
 
Status
Für weitere Antworten geschlossen.
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh