java.lang.NullPointerException at .

Status
Nicht offen für weitere Antworten.

MASTER23

Neues Mitglied
Hallo ich hab mir einen Source-code aus dem Internet kopiert, der ein Applet erzeugen soll.

Hab einfach die verschiedenen .java files in meinen Compiler (Eclipse) eingefügt und ausgeführt. Da spuckt er mir dann folgenden Fehler aus:
Code:
java.lang.NullPointerException
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:991)
	at java.lang.Double.valueOf(Double.java:447)
	at DoubleWellApplet.init(DoubleWellApplet.java:48)
	at sun.applet.AppletPanel.run(AppletPanel.java:378)
	at java.lang.Thread.run(Thread.java:595)

Es sind insgesamt 5 *.java files. Ich benutze Linux (falls das eine Rolle spielt).
Eclipse zeigt mir keine Fehler an bevor ich das Applet ausführe, aber er zeigt mir so "achtung" zeichen an :
Code:
The import java.lang is never used bei "import java.lang.*;"
Code:
The serializable class DoubleWellApplet does not declare a static 
 final serialVersionUID field of type long bei " public class DoubleWellApplet extends Applet implements Runnable {"
der Fehler spielt nach meinen Recherchen keine Rolle, aber ich hab ihn tortzdem mal gepostet

(Ich denke der Source Code noch nicht nötig wenn doch einfach bescheid sagen )

Also schonmal vielen dank an die Helfer :)!
[/code]


//edit: gesagt getan: DoubleWellApplet.java:
Code:
//=====================================================================
// File: DoubleWellApplet.java
//
// Applied Math 303, Term Project
// Blair Fraser, 2303725
//=====================================================================

import java.applet.Applet;
import java.awt.*;
import java.lang.*;

public class DoubleWellApplet extends Applet implements Runnable {

  
  //=====================================================================
  // Variables
  //
  //=====================================================================
  DoubleWellCanvas equationCanvas;
  Thread thread;
  Button stopStart;
  TextField positionText, velocityText, forceAmpText, 
            forceFreqText, dampenText;


  //=====================================================================
  // Methods
  //
  //=====================================================================

  //=====================================================================
  // initialize
  //
  // Initialize the applet, create the user interface, get parameters 
  // from the html file, create the equation canvas.
  //=====================================================================
  public void init() {
    

    setLayout(new BorderLayout());

    //----------------
    // Get parameters
    //----------------
    String str = new String();

    str = getParameter("initial_position");
    double initialx = Double.valueOf(str).doubleValue();

    str = getParameter("initial_velocity");
    double initialy = Double.valueOf(str).doubleValue();

    str = getParameter("forcing_amplitude");
    double forcingAmp = Double.valueOf(str).doubleValue();

    str = getParameter("dampening_constant");
    double dampening = Double.valueOf(str).doubleValue();

    str = getParameter("forcing_frequency");
    double forcingFreq = Double.valueOf(str).doubleValue();    

    str = getParameter("time_step");
    double stepSize = Double.valueOf(str).doubleValue();

    str = getParameter("interface_on");
    boolean buttonsOn = Boolean.valueOf(str).booleanValue(); 

    str = getParameter("maximum_x");
    double domainMaxx = Double.valueOf(str).doubleValue();

    str = getParameter("minimum_x");
    double domainMinx = Double.valueOf(str).doubleValue();

    str = getParameter("maximum_y");
    double domainMaxy = Double.valueOf(str).doubleValue();

    str = getParameter("minimum_y");
    double domainMiny = Double.valueOf(str).doubleValue();   


    //----------------------------
    // Create the equation canvas
    //----------------------------
    equationCanvas = new DoubleWellCanvas();
    equationCanvas.setParams(dampening, forcingAmp, forcingFreq);
    equationCanvas.setInitialState(0.0, initialx, initialy, 0.0);
    equationCanvas.setDomain(domainMaxx,domainMinx,domainMaxy,domainMiny);
    equationCanvas.setTimeStep(stepSize);

    //-----------------------------
    // Create buttons if nessasary 
    //-----------------------------  
    if(buttonsOn) {

      //-------------------------
      // Parameter 1 = initial x
      //-------------------------
      Panel param1Panel = new Panel();
      param1Panel.setLayout(new BorderLayout());
      param1Panel.add("West", new Label("Initial position"));
      positionText = new TextField(initialx+"", 8);
      param1Panel.add("East", positionText);

      //-------------------------
      // Parameter 2 = initial y
      //-------------------------
      Panel param2Panel = new Panel();
      param2Panel.setLayout(new BorderLayout());
      param2Panel.add("West", new Label("Initial velocity"));
      velocityText = new TextField(initialy+"", 8);
      param2Panel.add("East", velocityText);

      //----------------
      // Panel Number 1
      //----------------
      Panel panelNo1 = new Panel();
      panelNo1.setLayout(new BorderLayout());
      panelNo1.add("North", param1Panel);
      panelNo1.add("South", param2Panel);

      //---------------------------------
      // Parameter 3 = forcing amplitude
      //---------------------------------
      Panel param3Panel = new Panel();
      param3Panel.setLayout(new BorderLayout());
      param3Panel.add("West", new Label("forcing amplitude"));
      forceAmpText = new TextField(forcingAmp+"", 8);
      param3Panel.add("East", forceAmpText);

      //---------------------------------
      // Parameter 4 = forcing frequency
      //---------------------------------
      Panel param4Panel = new Panel();
      param4Panel.setLayout(new BorderLayout());
      param4Panel.add("West", new Label("forcing frequency"));
      forceFreqText = new TextField(forcingFreq+"", 8);
      param4Panel.add("East", forceFreqText);
      
      //----------------
      // Panel Number 2
      //----------------
      Panel panelNo2 = new Panel();
      panelNo2.setLayout(new BorderLayout());
      panelNo2.add("North", param3Panel);
      panelNo2.add("South", param4Panel);

      //----------------------------------
      // Parameter 5 = dampening constant
      //----------------------------------
      Panel param5Panel = new Panel();
      param5Panel.setLayout(new BorderLayout());
      param5Panel.add("West", new Label("dampening constant"));
      dampenText = new TextField(dampening+"", 8);
      param5Panel.add("East", dampenText);

      //----------------
      // Panel Number 3
      //----------------
      Panel panelNo3 = new Panel();
      panelNo3.setLayout(new BorderLayout());
      panelNo3.add("North", param5Panel);

      //-----------------------------------
      // Input bar panel, user text boxes.
      //-----------------------------------
      Panel inputBar = new Panel();
      inputBar.setLayout(new FlowLayout());
      inputBar.add(panelNo1);
      inputBar.add(panelNo2);
      inputBar.add(panelNo3);

      //-------------------------------------------
      // Control Bar Panel, entire user interface.
      //-------------------------------------------
      Panel controlBar = new Panel();
      controlBar.setLayout(new BorderLayout());
      stopStart = new Button("Restart with new settings");
      controlBar.add("North", stopStart);
      controlBar.add("South", inputBar);

      add("South", controlBar);


    } else {
      //-------------------------------------------------
      // If interface is off, just add a restart button.
      //-------------------------------------------------
      add("South", new Button("Restart"));
    }

    add("Center",equationCanvas);
    show();
  }


  //=====================================================================
  // start
  //
  // Start the thread.
  //=====================================================================
  public void start() {
    thread = new Thread(this);
    thread.start();
  }


  //=====================================================================
  // stop
  //
  // Stop the thread.
  //=====================================================================
  public void stop() {
    if(thread != null) {
      thread.stop();
      thread = null;
    }
  }

  //=====================================================================
  // run
  //
  // Run the thread, this is the main loop of the applet.
  //=====================================================================
  public void run() {
    while(true) {
      try {
        thread.sleep(25);
      }catch(InterruptedException e) {
        break;
      }
      equationCanvas.increment();
      equationCanvas.repaint();
    }
  }
  
  //=====================================================================
  // handle action
  //
  // How to handle a button click.
  //=====================================================================
  public boolean action(Event evt, Object arg) {
  
    if(evt.target instanceof Button) {

      if(arg.equals("Restart with new settings")) {
        double initx = Double.valueOf(positionText.getText()).doubleValue();
        double inity = Double.valueOf(velocityText.getText()).doubleValue();
        double fAmp = Double.valueOf(forceAmpText.getText()).doubleValue();
        double fFreq = Double.valueOf(forceFreqText.getText()).doubleValue();
        double damp = Double.valueOf(dampenText.getText()).doubleValue();
        equationCanvas.setParams(damp, fAmp, fFreq);
        equationCanvas.setInitialState(0.0, initx, inity, 0.0);
        equationCanvas.restart();

      } else if(arg.equals("Restart")) {
        equationCanvas.restart();
      }
      return(true);
    }
    return(false);
  }
}
 
S

SlaterB

Gast
DoubleWellApplet.init(DoubleWellApplet.java:48)
kannst du ruhig posten, oder die ganze init(),
aber die Zeile 48 markieren!
 

Marco13

Top Contributor
Die
getParameter("initial_position");
usw. liefern 'null'. Das Applet sollte normalerweise auf einer HTML-Seite stehen, wo diese Parameter in einem HTML-Tag angegeben sind. Wenn man es OHNE diese Parameter startet, krachts. Abhilfe: Passende Webseite bauen, oder die Zeilen entsprechend ändern
Code:
    //str = getParameter("initial_position"); // ALT
    str = 1234; // NEU (was auch immer eine geeignete 'initial_position' ist........
    double initialx = Double.valueOf(str).doubleValue();

EDIT: Man kann Eclipse wohl auch sagen, welche parameter er beim Starten an das Applet übergeben soll. Kannst ja mal schauen, wie das geht....
 

Murray

Top Contributor
Hilfreich wäre dazu auch eine kleine Utility-Methode, mit der man sich die Paramter holt:


Code:
protected double getDoubleParam( String name, double default) {
    String str = getParameter( name);
    if ( str != null) {
        try {
           return Double.parseDouble(str);
        }catch ( NumberFormatException nfe) {
            System.err.println( "Parameter-Fehler: " + name + "=" + str);
        }
    }
    return default; 
}

Damit könnte man die Initialisierung so schreiben:
Code:
    double initialx = getDoubleParam( "initial_position", 0.0d); 
    double initialy = getDoubleParam( "initial_veclocity", 1.0d); 
    double forcingAmp = getDoubleParam( "forcing_amplitude", 1.0d); 
    /* ... */
 

MASTER23

Neues Mitglied
also danke für die tips! ich hab es jetzt folgendermaßen gelöst : hab das applet jetzt in eine homepage eingebaut und dann die parameter eingefügt die auf der " originalen " homepage waren in meinene eigenen htmlcode eingefügt!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Fehlermeldung java.lang.NullPointerException Java Basics - Anfänger-Themen 4
D java.lang.NullPointerException Java Basics - Anfänger-Themen 19
X java.lang.NullPointerException fehler ? Java Basics - Anfänger-Themen 1
B java.lang.NullPointerException bei javafx Java Basics - Anfänger-Themen 10
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
H java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G java.lang.NullPointerException Java Basics - Anfänger-Themen 3
E Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 2
J java.lang.NullPointerException in meiner JavaFXControllerKlasse Java Basics - Anfänger-Themen 26
D Communications link failure | java.lang.NullPointerException Java Basics - Anfänger-Themen 3
F java.lang.NullPointerException, kann aber nicht sein! Java Basics - Anfänger-Themen 4
M Compiler-Fehler Java suckt - java.lang.NullPointerException Java Basics - Anfänger-Themen 12
L Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 2
S java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 4
A Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 7
P Interpreter-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 3
T Problem mit Eclipse? Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 4
S Fehler: "java.lang.NullPointerException" Java Basics - Anfänger-Themen 6
I Erste Schritte Ausführfehler: java.lang.NullPointerException Java Basics - Anfänger-Themen 3
1 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException Java Basics - Anfänger-Themen 5
S Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 11
V [Greenfoot] java.lang.NullPointerException Java Basics - Anfänger-Themen 12
S Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 10
J java.lang.NullPointerException Java Basics - Anfänger-Themen 18
K Interpreter-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 6
K OOP java.lang.NullPointerException Java Basics - Anfänger-Themen 2
B Exception in thread "main" java.lang.NullPointerException Fehler Hilfe! Java Basics - Anfänger-Themen 4
S Fehlermeldung: java.lang.NullPointerException Java Basics - Anfänger-Themen 10
A Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 16
K java.lang.NullPointerException in Array bei Arraylistübergabe Java Basics - Anfänger-Themen 7
G java.lang.NullPointerException Was tun? Java Basics - Anfänger-Themen 7
J java.lang.NullPointerException . Java Basics - Anfänger-Themen 5
G java.lang.NullPointerException Java Basics - Anfänger-Themen 2
S java.lang.NullPointerException - Bitte helft mir! Java Basics - Anfänger-Themen 5
S java.lang.NullPointerException Fehler bei Umrechnung Java Basics - Anfänger-Themen 3
P java.lang.NullPointerException Java Basics - Anfänger-Themen 19
S java.lang.nullpointerexception bei arrayübergabe Java Basics - Anfänger-Themen 30
S java.lang.NullPointerException bei Bildern Java Basics - Anfänger-Themen 13
P java.lang.NullPointerException was ist das? Java Basics - Anfänger-Themen 7
G java.lang.NullPointerException beim objekt Java Basics - Anfänger-Themen 3
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
JaVaN0oB java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 18
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
H JUnit in Eclipse: java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 9
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
B java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 3
P java.lang.ClassCastException Bedeutung und Lösung Java Basics - Anfänger-Themen 3
J Erste Schritte java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 4
I java.lang.ArrayIndexOutOfBoundsException at lösung.main Java Basics - Anfänger-Themen 3
T Compiler-Fehler java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 2
R java.lang.ArrayIndexOutOfBoundsException: 0 Rechner Error Java Basics - Anfänger-Themen 4
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
N jodaTime java.lang.IllegalArgumentException: Invalid format Java Basics - Anfänger-Themen 3
F Erste Schritte java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 3
R java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 1
V java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 2
H java.lang.NoClassDefFoundError Run as>> Run on Server Java Basics - Anfänger-Themen 2
L Fehler: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5
M java.lang.Enum.valueOf(Unknown Source) Java Basics - Anfänger-Themen 2
L Compiler-Fehler Problem beim Programmieren eines Kalenders (java.lang.ArrayIndexOutOfBoundsException) Java Basics - Anfänger-Themen 2
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
P Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 1
C Hilfe!!! java.lang.ClassCastException Java Basics - Anfänger-Themen 1
O java.lang.IndexOutOfBoundsException JTable autoSort Java Basics - Anfänger-Themen 5
W Methoden Rückgabedatentyp java.util.Map<java.lang.String,? extends ...> Java Basics - Anfänger-Themen 4
F Exception in thread main java.lang.StackOverflowError Java Basics - Anfänger-Themen 3
K Caused by: java.lang.NoClassDefFoundError: org/mindrot/jbcrypt/BCrypt Java Basics - Anfänger-Themen 0
OnDemand java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 9
J Klassen java.lang.String - lexikographisches Sortieren Java Basics - Anfänger-Themen 5
T Erste Schritte import java.lang.System.out Java Basics - Anfänger-Themen 4
H Classpath java.lang.NoClassDefFoundError externe Libary Java Basics - Anfänger-Themen 4
M Exception in thread "main" java.lang.NoClassDefFoundError: MeineKlasse Java Basics - Anfänger-Themen 12
X Applet Fehler: java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 45
B java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
H java.lang.IndexOutOfBoundsException bei verschachtelter ArrayList Java Basics - Anfänger-Themen 9
V java.lang.NoSuchMethodError Java Basics - Anfänger-Themen 2
J java.lang.math asin() Java Basics - Anfänger-Themen 18
R Compiler-Fehler java.lang.ArrayIndexOutOfBoundsException, warum? Java Basics - Anfänger-Themen 6
K Error: java.lang.NoSuchMethodException Java Basics - Anfänger-Themen 2
M Compiler-Fehler Fehler Meldung java.lang.NumberFormatException: empty String Java Basics - Anfänger-Themen 2
G java.lang.ClassNotFoundException Java Basics - Anfänger-Themen 4
S String index out of range: 8 at java.lang.String.substring(Unknown Source) Java Basics - Anfänger-Themen 13
X Interpreter-Fehler "java.lang.NullPionterException: null" bei BlueJ Java Basics - Anfänger-Themen 10
P java.lang.ClassCastException Java Basics - Anfänger-Themen 2
D java.lang.NoSuchMethodError: main Java Basics - Anfänger-Themen 11
S expected java.lang.string but found char Java Basics - Anfänger-Themen 5
S Umgebungsvariable Exception in thread "main" java.lang.UnsatisfiedLinkError: no J3D in java.librar y.path Java Basics - Anfänger-Themen 15
S Compiler-Fehler java.lang.SecurityException: Invalid signature file digest for Manifest main attributes Java Basics - Anfänger-Themen 5
M Klassen Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 2
A Compiler-Fehler unreported exception java.lang.Exception; must be caught or declared to be thrown Java Basics - Anfänger-Themen 7
K Fehlermeldung: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1 Java Basics - Anfänger-Themen 4
M Datentypen java.util.Arrays$ArrayList cannot be cast to [Ljava.lang.String; Java Basics - Anfänger-Themen 11
F Ich kenn mich nicht mehr aus - 'java.lang.NoSuchMethodError: main' in Applet? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben