TOM: warum geht mein applet auf fremden pc nicht mehr??

sers leuts... zuerst mal: wer interesse an meinem code hat, soll mir schreiben! der is doch a wengl länger schon...

folgendes problem:

ich hab die aktuelle jre auf meinem rechner.

mein proggy funtzt mit allem drum und dran - perfekt

will ich des meinem chief vorstelln -> funtzt nicht mehr (döl)

im grunde Steigt der Kasten schon bei einer der ersten anweisungen in der init() aus.. (dimesion) d->> d.getWidth() kommt folgender fehler.

java.lang.NoSuchMethodError: java/awt/Dimension: methodgetWidth()D not found

??????????????????

was soll das?

kennt der das nicht???

kann man das irgendwie übergeben???

oder is der client gezwungen die aktuelle runtime environment zu installieren (so ein schrott!!)

  1. Hi Thomas,

    java.lang.NoSuchMethodError: java/awt/Dimension: methodgetWidth()D not found

    Ich kann dir jetzt nicht sagen, ab welcher Java-Version die Methode double getWidth() in Dimension aufgetaucht ist, aber ich würde auf jeden Fall eine Installation eines aktuellen JREs empfehlen.

    oder is der client gezwungen die aktuelle runtime environment zu installieren (so ein schrott!!)

    Sieh es mal so: Wenn du ein neueres Spiel spielen möchtest, muss du auch DirectX 8 oder einen aktuellen OpenGL-Treiber installieren. Die Entwicklung geht weiter.

    Gruß,
    UlfL

    1. Servus

      Ich kann dir jetzt nicht sagen, ab welcher Java-Version die Methode double getWidth() in Dimension aufgetaucht ist,

      ...ab JDK 1.0, daran kanns also eigentlich nicht liegen. Ein fehlerhafter Code kanns auch nicht sein, da das Applet auf dem eigenen Rechner richtig läuft. Ich würde auch dazu raten ein aktuelles JRE zu installieren. Das kann auch für andere Anwendungen dann hilfreich sein.

      Grüße Goofy

    2. nö das könnte ich net verlangen, dass alle Kunden, die die WEb-oberfläche benutzen ein update ziehen... die meisten haben doch keine admin-rechte wie sollten sie das machen können??

      aber ich hab ne lösung:

      bin auf den fehler gekommen.. weiß zwar immer noch net warum aber jetzt gehts ;)

      wenn ich folgendes mache gibts fehler:

      Dimension d;
      d = this.getSize();

      int breite = (int) d.getWidth();

      k.A. warum

      aber so gehts:

      getSize().height bzw. getSize().width

      (int - aber so hätte ich hätte es dann eh in int konvertiert)

      bye TOM

      1. Hi TOM,

        das Problem kenn ich,M$ hat nur ne uralt version von Java eingebaut. Da musst Du bei einigem uralt methoden anwenden, die eigentlich deprecated sind.
        Ein anderes Beispiel ist der Zugriff auf Vektorelemente.

        Gruss

        Marko

        1. Hi!

          das Problem kenn ich,M$ hat nur ne uralt version von Java eingebaut. Da musst Du bei einigem uralt methoden anwenden, die eigentlich deprecated sind.

          Das Feld "width" in Dimension ist aber keineswegs deprecated:
          http://java.sun.com/j2se/1.4/docs/api/java/awt/Dimension.html
          Und bei Applets muss man leider immer damit rechnen, dass es uralte JREs gibt. Von daher wäre auch kein Swing zu empfehlen.

          VG Simon

          1. Hallo Simon,

            Das Feld "width" in Dimension ist aber keineswegs deprecated:

            ja, aber der radikal orthodoxe Anhänger der Objektorientierung wird einwenden, dass man niemals Felder direkt ansprechen sollte. Eine Verletzung gegen strengläubige Prinzipien.
            Ein Designfehler aus frühen Java Releases, der mit dem Methodenzugriff behoben wurde.

            Gruss

            Marko

            P.S.: Ich scheiße auch auf überzogen strenggläubige Prinzipien, und würd das hier auch nicht anders machen :-)