Sistema trava ao carregar array no actionPerformed, pq?

Galera,

Tenho duas classes, essa aqui de baixo faz a criação da tela de um joguinho e a outra (logo abaixo) cria um vetor com os numeros sorteados.

Estou tendo um problema, quando eu clico no botão “Ïniciar Sorteio” o sistema trava e só imprime o número 1 e 2 que coloquei pra depurar o método actionPerformed.

A idéia seria pegar o primeiro valor e jogar em um textfield, mas o sistema para…fica travado ao tentar carregar o array no actionPerformed, valeu !

Alguma dica do que pode estar ocorrendo ?

[code]import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class MontaTela extends javax.swing.JFrame {

private javax.swing.JButton btIniciarSorteio;
private javax.swing.JButton btProximaBola;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JTextField tfMostraBola;
private javax.swing.JTextField tfMostraSequencia;

/** Creates new form Find */
public MontaTela() {
    initComponents();
}

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
	//setSize(1800,1600);
    btIniciarSorteio = new javax.swing.JButton();
    jPanel1 = new javax.swing.JPanel();
    tfMostraBola = new javax.swing.JTextField();
    jPanel2 = new javax.swing.JPanel();
    tfMostraSequencia = new javax.swing.JTextField();
    btProximaBola = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Sistema Rasche de bingo");
    
    btIniciarSorteio.setText("Iniciar Sorteio");

    tfMostraBola.setBackground(new java.awt.Color(224,223,227));
    tfMostraBola.setEditable(false);
    tfMostraBola.setFont(new java.awt.Font("Arial", 1, 48));
    tfMostraBola.setHorizontalAlignment(javax.swing.JTextField.CENTER);
    tfMostraBola.setText("10");
    tfMostraBola.setBorder(null);

    org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(
        jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(jPanel1Layout.createSequentialGroup()
            .addContainerGap()
            .add(tfMostraBola, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 751, Short.MAX_VALUE)
            .addContainerGap())
    );
    jPanel1Layout.setVerticalGroup(
        jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(jPanel1Layout.createSequentialGroup()
            .add(23, 23, 23)
            .add(tfMostraBola, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
            .addContainerGap(29, Short.MAX_VALUE))
    );

    jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("N\u00fameros sorteados"));
    jPanel2.setName("");
    tfMostraSequencia.setBackground(new java.awt.Color(224, 223, 227));
    tfMostraSequencia.setEditable(false);
    tfMostraSequencia.setFont(new java.awt.Font("Arial", 1, 36));
    tfMostraSequencia.setForeground(new java.awt.Color(51, 102, 255));
    tfMostraSequencia.setText("01 10");
    tfMostraSequencia.setBorder(null);

    org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
    jPanel2.setLayout(jPanel2Layout);
    jPanel2Layout.setHorizontalGroup(
        jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(jPanel2Layout.createSequentialGroup()
            .addContainerGap()
            .add(tfMostraSequencia, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 739, Short.MAX_VALUE)
            .addContainerGap())
    );
    jPanel2Layout.setVerticalGroup(
        jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel2Layout.createSequentialGroup()
            .add(tfMostraSequencia, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 60, Short.MAX_VALUE)
            .addContainerGap())
    );

    btProximaBola.setText("Proxima Bola (+)");

    org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(layout.createSequentialGroup()
            .addContainerGap()
            .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(layout.createSequentialGroup()
                    .add(btIniciarSorteio, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .add(18, 18, 18)
                    .add(btProximaBola)
                    .add(555, 555, 555))
                .add(layout.createSequentialGroup()
                    .add(jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap())
                .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                    .add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addContainerGap())))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
        .add(layout.createSequentialGroup()
            .addContainerGap()
            .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                .add(btIniciarSorteio)
                .add(btProximaBola))
            .add(118, 118, 118)
            .add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
            .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 38, Short.MAX_VALUE)
            .add(jPanel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
            .addContainerGap())
    );
    //pack();
    TrataEventos trataEventos = new TrataEventos();
    //trataEventos.setTfCampoTexto(tfMostraBola);
    btIniciarSorteio.addActionListener(trataEventos);        
    setSize(800,600);
    setVisible(true);
}

public class TrataEventos implements ActionListener {  	
	public TrataEventos(){}	    		
	public void actionPerformed(ActionEvent e){
		if(e.getActionCommand().equals("Iniciar Sorteio")){
			System.out.println("1");
			GerenciaAleatorio gera = new GerenciaAleatorio();
			System.out.println("2");
			int[] numeros = gera.getListaNumeros();
			System.out.println("3");
			tfMostraBola.setText("10");
			System.out.println("4");
		}
	}

}

}
[/code]

[code]import java.util.Random;

public class GerenciaAleatorio {

private final int tam = 91;
Random rand = new Random(System.currentTimeMillis());

private int[] num = new int[tam];	

public GerenciaAleatorio(){}

public int getNumero(){		
	int i = 0;
	i = rand.nextInt(tam);
	while(existeNumero(i)==true){
		i = rand.nextInt(tam);
	}
	return i;
}	

public int[] getListaNumeros(){
	for(int i=0;i<num.length;i++){			
		num[i]= getNumero();
	}
	return num;
}

private boolean existeNumero(int numero){
	for(int i=0;i<num.length;i++){
		if(numero==num[i]){
			return true;
		}
	}
	return false;
}

}
[/code]>

Tem algo de errado na sua classe GerenciaAleatorio!!Não gera nada!!