Exception in thread "main" java.lang.OutOfMemoryEr

Status
Nicht offen für weitere Antworten.
J

JonnyB

Gast
Hallo,

ich habe 2 Klassen:


Klasse 1: MainBig.java


Code:
public String getGroupName(int zeile)
{
int i = zeile;		
			
if(dimension.getValueAt(i,4).toString().equals("abgelaufen"))
{
userDN = "CN=" + dm.getValueAt(i,6) + ",OU=" + groupC + ",OU=" + organizationTF.getText() + baseDN;		
}
			
return userDN;
			
}




Klasse 2: DAP.java


Code:
MainBig mainx = new MainBig();

for (int i = 0 ; i < mainx.dimension.getRowCount(); i++)
{
	 String userDN = mainx.getGroupName(i);
			 
}


Nach programm start:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at MainBig.getGroupName(MainWindow.java:212)
at DAP.createUserAccount(LDAP.java:83)
at Mainbig.actionPerformed(MainWindow.java:625)

die Zeile 212 ist dieser Code:
Code:
 if(dm.getValueAt(i,4).toString().equals("abgelaufen"))
und ich weiß ums verrecken nicht warum ein null pointer? Seht Ihr mehrß
 
S

SlaterB

Gast
du hast eine NullPointerException, keinen OutOfMemoryEr (ror?)

NullPointerException != OutOfMemoryEr (ror?)

erkennbar schon am ersten Buchstaben, N != O ;)
 

Niki

Top Contributor
nur ein kleiner tipp am rande, wenn du strings miteinander vergleichst, wobei ein string ein literal ist, solltest du so abfragen:

String a = "irgendwas";
"irgendwas".equals(a)

wenn a z.B. null wäre würdest du an dieser stelle keine nullpointerexception bekommen

das trägt zwar nicht zur lösung bei, ist jedoch sauberer programmierstil
 
S

SlaterB

Gast
es ist inhaltlich was anderes, da kann man nicht wirklich von sauber und nicht sauber sprechen,

manchmal dürfte man froh sein, auf die fehlenden null-Objekte per Exception hingewiesen zu werden, bevor die später viel mehr Unheil anrichten,

ein expliziter null-Test wäre natürlich besser,
dann oder auch im anderen Extrem (null kann nicht vorkommen) wäre also die Reihenfolge des Vergleichs egal,

"irgendwas".equals(a) hilft also nur, wenn man weiß, dass null vorkommt oder null in jedem Fall als nicht-gleich zählt,
und man das kurz und schnell, geradezu unsichtbar mit behandeln will,
schicker Code, aber ob das sauber ist?..
 

Niki

Top Contributor
ich gebe dir absolut recht, es macht nur dann sinn wenn man auch null-werte erwartet, ansonsten muss man vorher auf null abfragen
 
J

jonnyB

Gast
So ich werde aus der Fehlermeldung nicht schlau und ich denke laut eclipse liegt es an der instanz der
Hauptklasse MainBig.class:

Code:
public class MainBig extends JFrame implements ActionListener
{

    public MainBig()
    {  


     }
    public static void main(String args[])
    {          
        try				
        {    	        
         Color  defForeground = new Color(0,140,222);             
         UIManager.put("Label.foreground",defForeground);         
           
         JFrame.setDefaultLookAndFeelDecorated(true);
        }
        catch (Exception e)
        {
          e.printStackTrace();
        }

        MainBig Fenster = new MainBig();      
        Fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);         
        Fenster.setSize(1000,740);
        Fenster.setLocationRelativeTo(null);
        Fenster.setResizable(false);       
        Fenster.setVisible(true);   
    }
}



Code:
public class Test
{
	
	
    MainBig mainx = new MainBig();


    public Test()
    {			
	 
		 
    }



   public void doIt()
   {


        for (int i = 0 ; i < mainx.dm.getRowCount(); i++)
       {
		 //System.out.println(getGroupName(i));
		 System.out.println(mainx.dm.getValueAt(0, i));
			 
       }	

   }


}

Das beste ist ja, dass die methode doIt noch ncihtmal aufgerufen wird sondern gleich beim Programmstart bekomme ich obige Fehlermeldung ??? Wie gesagt mit dem object mainx stimmt was nicht nur was?
 
J

jonnyB

Gast
Nun habe ich das in der class Test geändert:
Code:
MainWindow mainx;

dann kompiliert eclipse doch es meckert immer an meiner for-schleife rum und jetzt kommt die meldung:

Code:
java.lang.NullPointerException

Das kann aber ums verrecken nicht sein!!! Die Tabelle ist randvoll am überlaufen mit Daten, wie kann da ein Nullpointer auftreten???
 
J

JonnyB

Gast
Wo bitteschön ist denn in deiner Hauptklasse dm deklariert?! Ich sehe da nichts

sorry hab ich vergessen mit anzugeben:


Die Variablen befinden sich in der Klasse MainBig.class


Code:
 DefaultTableModel dm;
        JTable tabelle
;

dies steht im Konstruktor:
Code:
dm = new DefaultTableModel (rowData,colName);         
tabelleT = new JTable( dm )

Kannst du mir helfen,bitte ?
 

sparrow

Top Contributor
Dann prüf doch mal alle Objekte durch ob sie null sind.
Solange du hier nur unvollständige Klassen postest können eh alle Beteiligten nur raten.

Code:
public class Test 
{ 
    
    
    MainBig mainx = new MainBig(); 


    public Test() 
    {          
    
       
    } 



   public void doIt() 
   { 

   if (mainx == null) { 
      System.out.println("mainx ist null!");
   }
   if (mainx.dm == null) {
      System.out.println("mainx.dm ist null!");
   }


        for (int i = 0 ; i < mainx.dm.getRowCount(); i++) 
       { 
       //System.out.println(getGroupName(i)); 
       if (mainx.dm.getValueAt(0, i) == null) {
           System.out.println("mainx.dm.getValue ist null bei :" + i);
        }
       System.out.println(mainx.dm.getValueAt(0, i)); 
          
       }    

   }
 
J

JonnyB

Gast
sparrow hat gesagt.:
Dann prüf doch mal alle Objekte durch ob sie null sind.
Solange du hier nur unvollständige Klassen postest können eh alle Beteiligten nur raten.
ote]

Das Probem ist ja , dass die for schleife mit der mainx instanz erst aufgerufen wird bzw. werden kann per jbutton click, nachdem die tabelle voll geladen ist mit daten von spalte 0 bis x, also kann da nicht null sein


Jetzt frage ich mich allerdings, bevor die anwendung startet und die tabelle mit datengefüllt wird und bevor ich den jbutton drücke mit der forschleife etc... nimmt da java schon eine prüfung durch ob etwas null ist das kann ich net glauben...

wie auch immer ich probiere es sofort aus mit deinem hinweis!
 

sparrow

Top Contributor
JonnyB hat gesagt.:
Das Probem ist ja , dass die for schleife mit der mainx instanz erst aufgerufen wird bzw. werden kann per jbutton click, nachdem die tabelle voll geladen ist mit daten von spalte 0 bis x, also kann da nicht null sein

Es geht ja auch nicht darum, dass der Inhalt null ist, sondern ein Objekt nicht richtig initialisiert wurde.
Eine Initialisierung erfolgt mit Objekt o = new Objekt(), das würde bedeuten, dass das Objekt mit dem Namen o als eine Instanz von Objekt initialisiert wurde.
Wurde ein Objekt nicht initialisiert wird eine NullPointerException geworfen.

Der Fehler befindet sich also nicht in den Daten der Tabelle sondern ein nicht korrekt initialisiertes Objekt.
Genau aus dem Grund sollst du ja mal schauen welches der Objekte eigentlich null ist.


Gruß
Sparrow
 
J

JonnyB

Gast
ne hat sich nichts geändert. Ich habe die null prüfungen gemacht und erhalte nicht mal eine Ausgabe...
 

sparrow

Top Contributor
Wie genau lautet denn die Fehlermeldung?
Bitte wortwörtlich bzw. hier hinein koprieren inkl. allem drum und dran.
 

thE_29

Top Contributor
Einen Outofmemory kannst du bei einer unendlich Schleife schnell schaffen oder einer rekusriven Methode die sich selbst aufruft!

Ansonsten bräuchte man den genauen Fehler!
 

Wildcard

Top Contributor
thE_29 hat gesagt.:
oder einer rekusriven Methode die sich selbst aufruft!
Da wirst du in fast allen Fällen eher einen StackOverflowError bekommen.
Auch die Endlosschleife muss nicht zu einem OutOfMemory führen.
Die häufigste Ursache sind nach meiner Erfahrung Array und String Operationen.
 
J

JonnyB

Gast
wenn ich die klasse Test auflöse und den code mit der for schleife ohne die Instanz mainx benutze klappt alles ???
 
J

JonnyB

Gast
Wildcard hat gesagt.:
Die häufigste Ursache sind nach meiner Erfahrung Array und String Operationen.

private String[][] rowData = new String [800][9];

der witz ist an dieser zeile code gabs es nie was zu mäckeln die ist so alt wie das programm selber. Nur wenn ich die sache mit der mainx instanz mache mäkelt er... warum ist mir schleiferhaft denn 800 x 9 = 5600 strings dürfte ja kein 1 GB ram pc aus den latschen hauen ^^
 

Wildcard

Top Contributor
1. Ein String kann auch viele viele MBs lang sein
2. Java verwendet nicht den ganzen RAM, sondern per Default maximal 64MB.
Wenn du mehr willst musst du ihn mit zB -Xmx512M zuweisen.
 

thE_29

Top Contributor
Zeig mal bißchen mehr Code her.. Maybe hast du wirklich wo nen rekursvions/endlos loop!

@Wildcard: nö, ich kriege meistens einen java.lang.OutofMemory.. Weil ich in der Schleife ja brav was allokiere ;)
 

sparrow

Top Contributor
Wa....

Bitte, bitte die vollständige Fehlermeldung.
Oder muss ich auch noch auf die Knie fallen?
 
J

JonnyB

Gast
sorry leute bin unter zeitdruck etc... bzw. kann paar tausend zeilen hier net posten ich werd den code einfach in die main klatschen da gehts ohne probleme ;-)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
S Exception in thread "main" java.lang.NullPointerException at FamilienApp.main(FamilienApp.java:15) Allgemeine Java-Themen 1
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
javaerd Binomialkoeffizient ausrechnen, Exception in thread "main" java.lang.StackOverflowError Allgemeine Java-Themen 6
J Exception in thread "main" java.lang.NoClassDefFoundError Allgemeine Java-Themen 4
N Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.p Allgemeine Java-Themen 4
S Exception in Thread "main" java.lang.NoClassDef. b Allgemeine Java-Themen 2
B Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 12
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 3
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 15
P Exception in thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 3
B Exception in thread "main" java.lang.OutOfMemoryEr Allgemeine Java-Themen 5
S Exception in thread "main" java.lang.StringIndexOu Allgemeine Java-Themen 9
G Exception in thread "main" :? Allgemeine Java-Themen 5
E Exception in Thread "main" java.lang.NoClassDefFou Allgemeine Java-Themen 5
P Swing Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: npoints > xpoints.length || npoints > ypoints.length Allgemeine Java-Themen 5
E Thread Exception Allgemeine Java-Themen 6
V Compiler-Fehler Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 125, Size: 125 Allgemeine Java-Themen 11
M Exception in thread "AWT-EventQueue-0" Allgemeine Java-Themen 6
K Exception in thread "AWT-EventQueue-1" Allgemeine Java-Themen 2
T Design - Exception in Thread Allgemeine Java-Themen 3
W Queue.remove() -> no such element exception Allgemeine Java-Themen 17
N Kann ich die Nullpointer Exception umgehen Allgemeine Java-Themen 12
N A java Exception has occured Allgemeine Java-Themen 8
G javafx "class path" exception Allgemeine Java-Themen 5
H Interface PluginSystem ClassNotFound exception für library Klassen Allgemeine Java-Themen 10
tom.j85 Exception bei Abfrage von Ländercodes in API? Allgemeine Java-Themen 13
S Exception Allgemeine Java-Themen 5
LimDul Streams und Exception Allgemeine Java-Themen 8
C FileLock - Exception wird immer geworfen Allgemeine Java-Themen 4
S Wertbeschränkung Exception oder Anpassung? Allgemeine Java-Themen 4
D Nullpointer Exception Problem Allgemeine Java-Themen 5
Kirby.exe Nullpointer Exception bei Queue Allgemeine Java-Themen 5
R Schlüsselworte "Throw new exception" gibt nicht den String als Fehlermeldung aus Allgemeine Java-Themen 2
S RMI Exception Allgemeine Java-Themen 0
S MSSQL Exception & Connection String Allgemeine Java-Themen 19
S Interface, generischer Datentyp, Exception? Allgemeine Java-Themen 3
coolian warum bekomme ich ein string index out of bounds exception Allgemeine Java-Themen 17
B Aufruf der Methode ergibt eine Exception Allgemeine Java-Themen 13
M Klassen Serializable Exception Allgemeine Java-Themen 1
M xlsx File auslesen Exception occured Allgemeine Java-Themen 13
X jvm exception abfangen und an externes Programm schicken Allgemeine Java-Themen 4
G Java/LibGDX File Loading Exception Allgemeine Java-Themen 2
B Exception in Application init method Allgemeine Java-Themen 5
H OOP Testen einer Exception mit JUnit Allgemeine Java-Themen 8
M javafx ComboBox- Nullpointer Exception Allgemeine Java-Themen 6
perlenfischer1984 Dialect class not found exception Allgemeine Java-Themen 15
Thallius Bekomme keine Exception mit Stacktrace mehr. Was habe ich getan? Allgemeine Java-Themen 13
perlenfischer1984 Functionsparameter prüfen und eine Exception werfen !? Allgemeine Java-Themen 11
E Probleme mit nextInt() und Exception Allgemeine Java-Themen 35
Z Exception wird nicht ausgelöst Allgemeine Java-Themen 2
0 Animiertes Gif anzeigen - NullPointer Exception Allgemeine Java-Themen 19
T Konstruktor löst exception aus Allgemeine Java-Themen 7
KilledByCheese Dezimal nach Hexadezimal rechner wirft seltsame exception Allgemeine Java-Themen 4
D Codeausführung bevor Exception abgeschlossen ist Allgemeine Java-Themen 11
T FileNotFound Exception Allgemeine Java-Themen 9
L Exception/Error auf JDialog umleiten Allgemeine Java-Themen 2
C Arithmetic Exception, obwohl nichts 0 ist Allgemeine Java-Themen 5
M A Java Exception has occured. Allgemeine Java-Themen 1
P Input/Output java.util.Scanner in einer Schleife und Exception-Behandlung: Einlesen einer Zahl Allgemeine Java-Themen 4
E A Java Exception Has Occured Allgemeine Java-Themen 4
T Exception handling Allgemeine Java-Themen 7
P lazy loading exception Allgemeine Java-Themen 0
A Interpreter-Fehler OutOfMemory Exception mit Base64 decode Allgemeine Java-Themen 3
S Java Applet Crash - Keine Exception Allgemeine Java-Themen 8
S Best Practice verschiedene Exceptions fangen und neue Exception erzeugen Allgemeine Java-Themen 11
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
P Eigene Exception Klasse Allgemeine Java-Themen 7
N Java Interne Exception Allgemeine Java-Themen 4
B JUnit4 Exception-Test Allgemeine Java-Themen 4
127.0.0.1 SQL Exception, kein Driver Allgemeine Java-Themen 9
S Erste Schritte Exception beendet Schleife nicht - Methode macht trotz throw weiter? Allgemeine Java-Themen 9
R ZIP FileSystem unter Windows wirft exception Allgemeine Java-Themen 7
H java.util.Timer und Funktion mit SQL Exception Allgemeine Java-Themen 5
Ollek Barcode mit Barcode4J erzeugen - Exception Allgemeine Java-Themen 4
Z Concurrent Modification Exception - HashMap (kein remove) Allgemeine Java-Themen 4
E Eigene Exception Klasse erstellen Allgemeine Java-Themen 3
L Variablen IO Exception weil File angeblich nicht exisitert Allgemeine Java-Themen 10
T Exception versus Rückgabeparamter Allgemeine Java-Themen 26
S Exception enableDepthTest Allgemeine Java-Themen 7
M JAXB Reimport zu Hibernate DB -> Exception Allgemeine Java-Themen 3
W Kleine Frage zu Null-Pinter-Exception Allgemeine Java-Themen 21
aze JUnit: Testen ob bestimmte Exception nicht auftritt Allgemeine Java-Themen 18
S Null Pointer Exception bei BufferedReader Allgemeine Java-Themen 4
N Runtime.exec() Exception Problem Allgemeine Java-Themen 3
P Default constructor cannot handle exception type Allgemeine Java-Themen 6
M Objekt prüfen auf null ->Invocation Target Exception??? Allgemeine Java-Themen 2
S Bildaufbau durch Servlet -> Exception Allgemeine Java-Themen 11
E Queue: Wie kann hier ein null-Pointer Exception auftreten?! Allgemeine Java-Themen 11
S Exception beim Schreiben des Dataset in XML Datei Allgemeine Java-Themen 8
M Webstart Exception trotz signierten JARs Allgemeine Java-Themen 3
E Interpreter-Fehler unbekannte Exception Allgemeine Java-Themen 12
B Komische Exception Allgemeine Java-Themen 4
U SwingWorker und Exception Allgemeine Java-Themen 3
B Nullpointer Exception in Array Allgemeine Java-Themen 15
G WebService Exception Allgemeine Java-Themen 3
M Best Practices Exception Handling für eigene library Allgemeine Java-Themen 8
G PermSpace Exception Allgemeine Java-Themen 2
S Invalid Chunk Exception Allgemeine Java-Themen 3
N URLClassLoader Exception Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben