Warum NullPointerException

tameck

Erfahrenes Mitglied
Morgen Zusammen

Ich habe eine Timer Methode geschrieben die alle paar sekunden eine anfrage an einen Server schicken soll.Wenn der Timer die vorgegebene Zeit erreicht hat schickt er die Anfrage an den Server raus und in dieser Zeile mit der Anfrage bekomme ich immer eine NullPointerException. Ich zeig euch mal den Code.

Code:
//Timer initalisieren------------------------------------------------------------------

	timer = new Timer(1000, this);
	sec = 0;
	timer.setInitialDelay(0);
	timer.start();

public void actionPerformed(ActionEvent e){
	if((sec % 5)==0){
			
		out.println("Q_MOTD:");
		try{
			ausgabe = in.readLine();
			array = ausgabe.split(":");
			}catch (IOException e1) {
			e1.printStackTrace();
			}
			if(ausgabe.length()>=8){
				JOptionPane.showMessageDialog(null,array[1]);
			}
			else if(ausgabe.length()<=8){
				System.out.println("today no message of the day");
			}
		}	
		
	if((sec % 10)==0){
			out.println("Q_USR_STATUS:"+localDomainName+"_"+localHostName);
			System.out.println("Überprüfe deinen Status...");
	
			try {
		           	ausgabe = in.readLine();
					
			}catch (IOException e1){
				e1.printStackTrace();
			}
					
			array = ausgabe.split(":");
			System.out.println(array[0]+" ZZZ "+array[1]);
				
			if(array[0].equals("R_USR_STATUS")){
				ausgabe=array[1];
				array=ausgabe.split(";");
				System.out.println(array[0]+" YYY ");
				label9.setText("Status: "+array[0]);
				if(array[0].equals("USR_LOGGED_IN")){
					ipadresse.removeAllItems();
					for(int i=0;;i++){
						try{
							ipadresse.addItem(array[i+1]);
//							System.out.println(i+" Try "+ipadresse.getItemAt(i));
								
						}catch(Exception e2){
//							System.out.println(i+" Catch ");
							break;
					}
				}
			}
		}
sec1++;
 
Hallo,

vielleicht solltest du auch die Exeption mal posten, sonst weiß man ja nicht nach was man schauen muss.

MFG

zEriX
 
Okay

Code:
Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException
	at BDAADapplet.BDAAD.actionPerformed(BDAAD.java:254)
	at javax.swing.Timer.fireActionPerformed(Unknown Source)
	at javax.swing.Timer$DoPostEvent.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Zeile 254 ist diese:
Code:
 out.println("Q_USR_STATUS:"+localDomainName+"_"+localHostName);
 
Ah okay ich habs. Ich hab den Timer zu früh initalisiert. Dadurch war meine out.println null.
Danke für deine Hilfe

MfG Tameck
 
Zurück