# Arrayliste bei nullprüfung, nullpointer Exception...



## sence (25. Mai 2010)

Hallo Forum,

Folgendes: Ich habe eine Klasse welche Artikel objekte aufnimmt.
Diese heißt VirtualArtikelMap.
In dieser Klasse ist als "sammelordner" eine Arraylist vorhande.

(Das ganze geht in Swing und awt ohne probleme, jedoch beim Servlet, gibt es Probleme.)


```
HttpSession session = request.getSession(true);
	int pid = Integer.parseInt(request.getParameter("pid"));
	VirtualArtikelMap VAM = (VirtualArtikelMap) session.getAttribute("VAM");
	
		
	
	// Ausgewählten Artikel zur preListe hinzufügen oder Menge erhöhen bei bestehen.
     	
    	boolean checkvalue = false;
    	if(VAM.ArtTabelle.size() >0 ) {
    		checkvalue = VAM.checkExsistArtNr(Integer.valueOf(pid));    	
    		if(checkvalue == true) {
    			// Wenn artikel bereits hinzugefügt, dann Editieren
```

Zuerst hole ich mir den Parameter, welcher in den Warenkorb eingefügt werden soll (pid) aus dem Request.
Dann hole ich mir den "warenkorb" VirtualArtikelMap.
nun sage ich: wenn keine artikel vorhanden sind if(VAM.ArtTabelle.size() >0 ) {
dann dies.

so das ganze habe ich auch schon so geschrieben:
if(VAM != null) .....
Oder auch
if(VAM == null)

aber immer kommt hierbei der Fehler, wenn ich auf null prüfen möchte....

Vielen dank!???:L


----------



## fastjack (25. Mai 2010)

Das reicht:


```
if(VAM != null && VAM.ArtTabelle != null && VAM.ArtTabelle.size() > 0) {
```

Schau Dir mal die Sun Code-Konventionen an und prüf mal, ob VAM.ArtTabelle auch manchmal null ist, dann müßtest Du vielleicht VAM.ArtTabelle vorher initialisieren.


----------



## sence (25. Mai 2010)

Danke für die Info,

nun geht es auf einmal.....

hab das konstrikt nun so gebaut:


```
HttpSession session = request.getSession(true);
	int pid = Integer.parseInt(request.getParameter("pid"));
	VirtualArtikelMap VAM  = (VirtualArtikelMap) session.getAttribute("VAM");	

// weiterer Code (nicht relevant hierfür)

if(VAM == null ) {
    		// Noch keine VAM Vorhanden, neu erstellen und ersten Artikel hinterlegen   		 
    		VAM = new VirtualArtikelMap();
    		rs.next();
    		VAM.insertArtikel(pid, rs.getString(4), 1.00, rs.getDouble(6), rs.getDouble(12), rs.getDouble(7));
    		session.setAttribute("VAM", VAM);
```

danke nochmal


----------

