# Exception java.lang.NoSuchFieldError : WHITE



## robb (9. Mrz 2007)

Hi, 

ich habe folgendes Problem. Ich habe bisher unter jdk 1.5.02 entwickelt und möchte mein Applet nun über MetaFrame aufrufen lassen. Auf den MetaFrame Servern ist nur jdk 1.4.06 installiert, also habe ich mein Appletcode noch einmal überarbeitet und mit dem jdk 1.4.06 compiliert. Wenn ich über meinen Browser das Applet aufrufe funktioniert es einwandfrei. Sobald ich allerdings über MetaFrame versuche auf den Browser zuzugreifen wird mir der Fehler:



> java.lang.NoSuchFieldError:WHITE


 angezeigt.

Ich habe schon versucht diesen Fehler duch Google ausfindig zu machen nur leider ohne Erfolg.

Wäre nett wenn mir jemand helfen könnte, 

mfg Robb


----------



## SlaterB (9. Mrz 2007)

gibts keinen StackTrace zu dem Fehler?
durchsuche den Quelltext nach ".WHITE"

es kommt eigentlich nur Color.WHITE in Frage:


> Color WHITE The color white. In the default sRGB space.
> Since:
> 1.4


vielleicht doch noch ne ältere Version in MetaFrame?

ersetze Color.WHITE testweise durch Color.white, welches es wohl schon länger gibt, oder new Color(255, 255, 255);


----------



## robb (9. Mrz 2007)

Ich habe ja nicht viel mit dem MetaFrame System hier in der Firma am Hut... Aber ich habe es mit den Verantwortlichen besprochen und die haben mir die richtige jdk Version gegeben.
Und ich benutze kein einziges mal die Konstante "Color.WHITE" in meinem Quelltext. Es kommt nur new Color(255,255,255) vor.


----------



## SlaterB (9. Mrz 2007)

soso, ein unbekannter Fehler ohne StackTrace oder sonstige Info und keine Möglichkeit zum Debuggen 

einziger verbleibener Schritt:
starte mit einem Hello World-Programm:

```
public class HelloWorld {
   public static void main(String[] args) {
      System.out.println("Hello World");
   }
}
```
läuft das? wenn ja, dann Zeile für Zeile, Klasse für Klasse dein restliches Programm hinzufügen, bis irgendwann der Fehler auftritt...


----------



## robb (9. Mrz 2007)

hmm, also es war noch ein anderes JRE plugin ( jre 1.3 ) eingestellt unter MetaFrame. Und da gibt es nun nicht mehr den Fehler... Allerdings verzweifel ich immer noch an der Visualisierung des Applets... denn ich bekomme immer nur ein graues Applet Fenster angezeigt. Ich werde mir nochmal ein kurzes Testprogramm schreiben und sehen ob er überhaupt solche kompilierten Programme darstellen kann.


----------



## robb (9. Mrz 2007)

Also ich habe nun versucht ein HelloWorldApplet zum Laufen zu kriegen, bekomme aber immer noch nur ein leeres graues Fenster anstelle des Applets zu sehen. Als Fehler meldung bekomme ich in der Java Konsole:



> Error loading class: HandyAdvisorApplet
> java.lang.NoClassDefFoundError
> java.lang.ClassNotFoundException: HandyAdvisorApplet
> at com/ms/vm/loader/URLClassLoader.loadClass
> ...



Nur ich bin mir nicht so wirklich sicher, wie ich das Lösen soll... Nachdem ich danach gegoogelt habe schliesse ich, dass es an dem Browser liegt, der die Klasse nicht laden kann...

Was interessant ist, ist das wenn ein Server unter MetaFrame die aktuelle JRE Version raufgespielt bekommt, funktioniert alles einwandfrei... Nur da die alter Version drauf bleiben soll, hab ich das Problem, dass Applet auch so zum laufen zu bekommen...

Wenn jemand dazu noch etwas weiss, wäre es nett mich davon in Kenntnis zu setzen,

mfg Robb


----------



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

Nur so 'ne Frage: Programmierst du zufällig mit Visual J++? Wenn nicht, solltest du mal in deinem Internet Explorer die M$-VM abschalten und eine JRE von Sun installieren/aktivieren.


----------



## robb (9. Mrz 2007)

Nein, ich entwickle unter Java Editor. Aber das mit der VM musst du mir mal erklären was dadran das Prob ist.


----------



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

Wenn du mit Java 1.4 von Sun entwickelst, du das Applet aber in der M$-VM ausführen willst - dann hast du ein Problem...
http://www.java-forum.org/de/viewtopic.php?t=4936

Und so wie's aussieht, ist die M$-VM aktiv.


----------



## robb (12. Mrz 2007)

Was ich ein wenig komisch finde, ist das einer der MetaFrame Server mit der Jre Version 1.5 bespielt wurde und dort lief das Applet Problemlos. Oder wird mit dem aufspielen der 1.5er Version automatisch die MS-VM ausgetauscht mit der Sun  
VM?

Gruss


----------



## L-ectron-X (12. Mrz 2007)

Applets laufen Client-seitig, es kommt also darauf an, was auf dem jeweiligen Client für eine VM läuft. Was auf einem Server läuft, ist völlig egal.
Wenn der Client einen Internet Explorer nutzt, der vielleicht noch etwas älter ist, solltest du mal die Einstellungen checken.


----------



## robb (12. Mrz 2007)

Also irgendwie werde ich daraus nicht schlau... Es ist ein Java-Plugin mit der Sun-Vm vorhanden für Meta Frame nur es wird immer noch die MS-VM benutzt vom Internet Explorer...


----------



## L-ectron-X (12. Mrz 2007)

Ich weiß nicht, wie oft ich es noch wiederholen soll!?
Guck mal in die Einstellungen vom Internet Explorer!


----------



## robb (12. Mrz 2007)

das habe ich gemacht... Nur dort ist nur die MS-VM drin und keine Sun Vm vorhanden. Ich habe eben mit dem Administrator von MeteFrame gesprochen und der hat mir gesagt er habe die Sun VM drin...


----------



## robb (12. Mrz 2007)

Es geht nun mit dem Anzeigen, war wirklich nur ne Einstellungsgeschichte wobei mir die Sun Vm erst nach dem erneuten Java Plugin Konfigurieren angezeigt wurde in den Internet-Einstellungen.

Gruss Robb


----------



## L-ectron-X (13. Mrz 2007)

Na bitte! Geht doch! Allerdings hättest du da keinen Admin fragen brauchen, welche VM er auf seinem Server etc laufen hat. Es geht hier rein um den Client, um nichts anderes.


----------

