Como pegar tamanho Atual do JPanel?

Pessoal, eu estou com esse seguinte probleminha

Eu tenho um painel que esta com o Layout BorderLayout, e eu colocou no centro um JPanel (painel1) e no sul outro JPanel (painel2).

Com isso o painel1 se ajusta no tamanho que preenche todo o interior do painel do Borderlayout, assim mesmo maximizando a tela, o tamanho é reajustado.

Só que eu quero saber o tamanho qu este painel1 tem, se eu dou um getSize() é retornado W = 0 e H = 0, se eu dou um getPreferredSize() tambem é retornado W = 0 e H 0. Bom a minha duvida é como eu posso descobrir o tamanho que este componente tem ??? Afinal eu não defino o tamanho dele, o Borderlayout que ajusta o tamanho dele !

Valeu Galera

aqui funcionou legal…

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JFrame;
import javax.swing.JPanel;
/*
 * Created on 29/06/2004
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author Administrador
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class TesteFrame extends JFrame {

	JPanel panel1 = new JPanel();
	JPanel panel2 = new JPanel();
	
	
	public TesteFrame(){
		
		super("Teste");
		setSize(500,500);
		
		panel1.setBackground(Color.WHITE);
		panel2.setBackground(Color.GRAY);
		
		panel2.setPreferredSize(new Dimension(20,20));
		
		panel2.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				// TODO Auto-generated method stub
				if(e.getClickCount() >= 2){
					System.out.println("Width  => " + panel1.getWidth());
					System.out.println("Height => " + panel1.getHeight());
				}
			}
			public void mouseEntered(MouseEvent e) {}
			public void mouseExited(MouseEvent e) {}
			public void mousePressed(MouseEvent e) {}
			public void mouseReleased(MouseEvent e) {}
		});
		
		getContentPane().add(panel1, BorderLayout.CENTER);
		getContentPane().add(panel2, BorderLayout.SOUTH);
		show();
		
	}
	
	public static void main(String[] args) {
		TesteFrame t = new TesteFrame();
	}
}