Relógio tempo real

4 respostas
ramilani12

Olá pessoal estou desenvolvendo um sistema de controle de estacionamento e tenho uma tela que o usuário registra a entrada do carro , pegando a placa ,data e hora de entrada pois bem meu problema é mostrar essa hora no JFrame , meu JFrame implementa a Runnable para que relógio funcione em tempo real , mas solta uma exception que não entendo segue o código:

Inicio minha thread no construtor da classe

if (threadRelogio == null) {
            threadRelogio = new Thread(this);
            threadRelogio.start();
         }

meu run()

public void run()
	{
		try
		{
			while (threadRelogio != null)
			{
				dataEntrada = new Date();
				cal.setTime(dataEntrada);//linha 88 que debug acusa o erro 
				sec = cal.get(Calendar.SECOND);
		        min = cal.get(Calendar.MINUTE);
		        hou = cal.get(Calendar.HOUR_OF_DAY);
		        mon = cal.get(Calendar.MONTH);
		        day = cal.get(Calendar.DAY_OF_WEEK);
		        dom = cal.get(Calendar.DAY_OF_MONTH);
		        yea = cal.get(Calendar.YEAR);
		        
		        if (sec < 10) 
		               segundos = "0" + sec; 
		        else 
		               segundos = String.valueOf(sec); 
		        if (min < 10) 
		               minutos = "0" + min; 
		        else 
		        	   minutos = String.valueOf(min); 
		    
		        hoje = diaSem[day] + ", " + dom + " de " + mes[mon] +
				" de " + yea + " " + hou + ":"
				+ minutos + ":" + segundos;
		        
		        labelHEntrada.setBounds(new Rectangle(400,10,600,25));
				labelHEntrada.setText(hoje);
				panelRegEnt.add(labelHEntrada,null);
				System.out.print("Data "+hoje);
				
				threadRelogio.sleep(1000L);
				
			}	
				
		}		
		catch (InterruptedException ex)
		{
			ex.printStackTrace();
		}
		catch (Exception ex)
		{
			ex.printStackTrace();
		}
	}

A exception :

java.lang.NullPointerException
	at interfaces.CIntRegEntrada.run(CIntRegEntrada.java:88)
	at java.lang.Thread.run(Unknown Source)

Não entendo o erro…

4 Respostas

cleiton_herrmann

Amigo, esse erro que esta acontecendo, é pq provavelmente vc nao inicializou alguma variável, o NullPointerException, significa que o ponteiro é nulo, e que foi lançada uma exceção para este erro. de uma olhada na variavel " cal " que tem no seu ´método " run ", muito provavelmente está faltando inicializar esta variavel.

Espero ter ajudado, qualquer coisa pergunta ai, se puder eu respondo!
falow

P

cara…onde vc pega uma instancia do Calendar para o referencia cal ?
em algum lugar vc esta atribuindo null para esta referencia ?

ramilani12

Pois é a referêncial cal está assim:

private GregorianCalendar cal = null;
ramilani12

Putz era isso mesmo , instancei a GregorianCalendar e funcionou

brigadao pela ajuda …

Criado 8 de junho de 2006
Ultima resposta 8 de jun. de 2006
Respostas 4
Participantes 3