Me ajudem com a JTable

Tenho um problema no JTable do meu programa que gerencia um banco de dados em Access, a classe que procura e mostra funciona direitinho, mas na hora de cria a tabela(JTable), não aparece nada, onde estou errando; no meu programa principal: Gerenciador.java crio uma JTable

  • table = new JTable( 2, 5);
  • c.add( table, BorderLayout.SOUTH );

e depois mando ela para outra classe que cria os botoes:

  • botoes = new BotoesPanel( connect, scrollArea, table );
  • c.add( botoes, BorderLayout.EAST );

e na classe BotoesPanel, passo para outra classe ProcuraCantor:

  •           procura1.addActionListener(  new ProcuraCantor( c, s, o) );
    

Bom beleza ate ai ta tudo certo, o problema é aki, e tipo o programa compila normal e executa normal, mas na hora nao mostra a JTable:

import java.sql.;
import javax.swing.
;
import java.awt.;
import java.awt.event.
;
import java.util.*;

public class ProcuraCantor extends JFrame implements ActionListener{
private ScrollingPanel campos;
private Connection connection;
private JTable table;
private ResultSet resultSet;
private ResultSetMetaData rsMetaData;

public ProcuraCantor( Connection c, ScrollingPanel f, JTable t )
{ 
	connection = c;
	campos = f;
	table = t;
}

public void actionPerformed( ActionEvent e )
{
	try {
		if ( ! campos.autor.getText().equals( "" ) )
		{
		Statement statement = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
		String query = "SELECT * FROM musica " + 
					"WHERE autor LIKE '%"
             + campos.autor.getText() + "%';"; 
		resultSet = statement.executeQuery( query ); 
		displayResultSet( resultSet );
		statement.close();
		 }
		else {
		JOptionPane.showMessageDialog( null, "Digite", "Erro", JOptionPane.INFORMATION_MESSAGE );
	}
		
	}
	catch ( SQLException sqlex ) {
		JOptionPane.showMessageDialog( null, "Erro1", "Erro", JOptionPane.INFORMATION_MESSAGE );}
}

private void displayResultSet( ResultSet rs )
throws SQLException
{
// position to first record
boolean moreRecords = rs.next();

  // If there are no records, display a message
  if ( ! moreRecords ) {
     JOptionPane.showMessageDialog( null, 
        "ResultSet contained no records", "Erro", JOptionPane.ERROR_MESSAGE );
     return;
  }

  Vector columnHeads = new Vector();
  Vector rows = new Vector();

  try {
     // get column heads
     ResultSetMetaData rsmd = rs.getMetaData();
  
     for ( int i = 1; i <= rsmd.getColumnCount(); ++i ) 
        columnHeads.addElement( rsmd.getColumnName( i ) );

     // get row data
     do {
        rows.addElement( getNextRow( rs, rsmd ) ); 
     } while ( rs.next() );

     // display table with ResultSet contents
     table = new JTable( rows, columnHeads );
     Container c = getContentPane();
     c.add( table, BorderLayout.SOUTH );
     c.validate();
  }
  catch ( SQLException sqlex ) {
     sqlex.printStackTrace();
  }

}

private Vector getNextRow( ResultSet rs,
ResultSetMetaData rsmd )
throws SQLException
{
Vector currentRow = new Vector();

  for ( int i = 1; i <= rsmd.getColumnCount(); ++i )
     switch( rsmd.getColumnType( i ) ) {
        case Types.VARCHAR:
        case Types.LONGVARCHAR:
              currentRow.addElement( rs.getString( i ) );
           break;
        case Types.INTEGER:
              currentRow.addElement( 
                 new Long( rs.getLong( i ) ) );
           break;
        default: 
           System.out.println( "Type was: " + 
              rsmd.getColumnTypeName( i ) );
     }
  
  return currentRow;

}
}

O programa procura os resultados e mostra, já até testei numa JTextArea e deu certo, mas na hora de mostrar na JTable, naum aparece nada.
Obrigado se me ajudarem!

Use um javax.swing.table.TableModel para fazer isso que vc quer.
Dë uma olhada na documentação da API de JTable que no inicio do arquivo tem um exemplo de como usar JTable com TableModel.

tudo sobre JTable:

http://www.manning.com/Robinson/chapter18.pdf