Dúvidas sobre set e gets, porque não envia?

Olá a todos, a minha dúvida é a seguinte, porque não consigo passar os dados da classe Login para a classe ConnectServer usando set()??

Segue o código abaixo:


/*
 * Login.java
 * 
 * Created on October 01, 2006, 8:55 AM
 *
 * Classe responsável em verificar se o usuário e senha digitados
 * são verdadeiros ou não, dando acesso ao sistema Shell
 */

package cliente;

import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Insets;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JProgressBar;
import javax.swing.JTextField;

/**
 * @author Fábio Curtis Volpe
 */
public class Login extends JFrame {
	public Login() {		
		super("Shell -> Login");		
		initComponents();
	}

	private void initComponents() {
		
		login = new JFrame();
		lTitulo = new JLabel();
		userName = new JTextField();
		lUserName = new JLabel();
		lPassWord = new JLabel();
		conectar = new JButton();
		sair = new JButton();
		passWord = new JPasswordField();
		progressBar = new JProgressBar();
			
		//======== login ========
		{
			Container loginContentPane = login.getContentPane();
			loginContentPane.setLayout(null);
			
			//---- lTitulo ----
			lTitulo.setText("Welcome to Shell");
			lTitulo.setFont(new Font("Century Gothic", Font.BOLD, 26));
			lTitulo.setForeground(Color.blue);
			lTitulo.setBounds(new Rectangle(new Point(50, 25), lTitulo.getPreferredSize()));
			add(lTitulo);
			
			//---- userName ----
			userName.setColumns(20);
			userName.setFont(new Font("Century Gothic", Font.PLAIN, 12));
			userName.setBounds(new Rectangle(new Point(105, 90), userName.getPreferredSize()));
	        userName.setDocument(new TamanhoCaracteres(20));
			userName.requestFocus();			
			add(userName);
			
			//---- lUserName ----
			lUserName.setText("Username:");
			lUserName.setFont(new Font("Century Gothic", Font.BOLD, 16));
			lUserName.setBounds(new Rectangle(new Point(18, 90), lUserName.getPreferredSize()));
			add(lUserName);
			
			//---- lPassWord ----
			lPassWord.setText("Password:");
			lPassWord.setFont(new Font("Century Gothic", Font.BOLD, 16));
			lPassWord.setBounds(new Rectangle(new Point(25, 120), lPassWord.getPreferredSize()));
			add(lPassWord);			
			
			//---- conectar ----
			conectar.setText("Conectar...");
			conectar.setIcon(new ImageIcon("C:\Documents and Settings\F\u00e1bio\Desktop\Meus Projetos\Shell\icones\32x32\actions\lock.png"));
			conectar.setBounds(new Rectangle(new Point(105, 175), conectar.getPreferredSize()));
			add(conectar);
			
			conectar.addActionListener (
					new ActionListener() { // classe interna anônima
						public void actionPerformed(ActionEvent event) {
							// verifica se o campo userName está em branco
							if(userName.getText().trim().equals("")){
								JOptionPane.showMessageDialog(null,"Username ou Password inválido!", "Informação", JOptionPane.INFORMATION_MESSAGE);
								userName.requestFocus();
								return;
							}
							// chama o método faz o login
							Conecta();      
						}
					}
			);			
			
			//---- sair ----
			sair.setText("Sair");
			sair.setIcon(new ImageIcon("C:\Documents and Settings\F\u00e1bio\Desktop\Meus Projetos\Shell\icones\32x32\actions\gnome-logout.png"));
			sair.setBounds(new Rectangle(new Point(235, 175), sair.getPreferredSize()));
			add(sair);
			
			sair.addActionListener (
					new ActionListener() { // classe interna anônima
						public void actionPerformed(ActionEvent event) {
							System.exit(0); // encerra o aplicativo							      
						}
					}
			);
			
			//---- passWord ----
			passWord.setColumns(20);
			passWord.setFont(new Font("Century Gothic", Font.PLAIN, 12));
	        passWord.setDocument(new TamanhoCaracteres(20));
			add(passWord);
			passWord.setBounds(new Rectangle(new Point(105, 120), passWord.getPreferredSize()));
			
			loginContentPane.add(progressBar);
			progressBar.setBounds(0, 240, 380, progressBar.getPreferredSize().height);
			// define o valor inicial para progressBar
			progressBar.setMinimum(0);
			// define o valor máximo para progressBar
			progressBar.setMaximum(50);
			add(progressBar);			
			
			{ // compute preferred size
				Dimension preferredSize = new Dimension();
				for(int i = 0; i < loginContentPane.getComponentCount(); i++) {
					Rectangle bounds = loginContentPane.getComponent(i).getBounds();
					preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
					preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
				}
				Insets insets = loginContentPane.getInsets();
				preferredSize.width += insets.right;
				preferredSize.height += insets.bottom;
				loginContentPane.setPreferredSize(preferredSize);				
			}
		}
	}
	
	/*
	 * Método responsável em fazer o login do usuário ao sistema
	 */
	private void Conecta() {
		// instancia a classe ConnectServer
		connect = new ConnectServer();
		
		// envia mensagem
                connect.setMensagemOut(userName.getText()+":"+passWord.getText());

		if (connect.getMensagemIn().equals("true")) { // usuário verdadeiro
						
			Desktop desk = new Desktop();
			desk.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			desk.setSize(1024,768);        
			desk.setVisible(true);
						
			try {
				// fecha os canais
				connect.getIn().close();
				connect.getOut().close();

				// fecha conexão
				connect.getConexao().close();

				System.out.println("Conexão encerrado com sucesso!!");

			} catch (IOException e) {
				e.printStackTrace();
			}			        
		}
		
		else if (connect.getMensagemIn().equals("false")) { // usuário inválido
			JOptionPane.showMessageDialog(null,"Username ou Password inválidos!", "Informação", JOptionPane.INFORMATION_MESSAGE);
			userName.setText("");
			passWord.setText("");
			userName.requestFocus();
		}
		
		else {
			
		}
	}
	
	// Variables declaration
	private JFrame login;
	private JLabel lTitulo;
	private JTextField userName;
	private JLabel lUserName;
	private JLabel lPassWord;
	private JButton conectar;
	private JButton sair;
	private JPasswordField passWord;
	private JProgressBar progressBar;
	private ConnectServer connect;
}

/*
 * ConnectServer.java
 *
 * Created on October 03, 2006, 8:53 AM
 *
 * Classe responsável em conectar ao servidor
 */

package cliente;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;

import javax.swing.JOptionPane;

/**
 * @author Fábio Curtis Volpe
 */
public class ConnectServer {
    
    protected ConnectServer() {
        try {
                       
            System.out.println("Mensagem:" + getMensagemOut());
            
            // realiza a conexão no servidor e na porta
            setConexao(new Socket("10.9.61.26", 4242));
            
            // cria um canal para receber dados
            DataInputStream in = new DataInputStream(getConexao().getInputStream());
            
            // cria um canal para enviar dados
            DataOutputStream out = new DataOutputStream(getConexao().getOutputStream());
            
            // envia mensagem do tipo String
            out.writeUTF(getMensagemOut());
            
            // aguardo resposta do servidor do tipo String
            setMensagemIn(in.readUTF());
            
        } catch (IOException Ex) { //não consegui conectar
            JOptionPane.showMessageDialog(null,"Não é possível conectar ao servidor!", "Informação", JOptionPane.INFORMATION_MESSAGE);
        }
    }
    
    protected void setConexao(Socket conexao) {
        this.conexao = conexao;
    }
    
    protected Socket getConexao() {
        return conexao;
    }
    
    protected void setMensagemIn(String mensagemIn) {
        this.mensagemIn = mensagemIn;
    }
    
    protected String getMensagemIn() {
        return mensagemIn;
    }
    
    protected void setMensagemOut(String mensagemOut) {
        this.mensagemOut = mensagemOut;
    }
    
    protected String getMensagemOut() {
        return mensagemOut;
    }
    
    protected void setIn(DataInputStream in) {
        this.in = in;
    }
    
    protected DataInputStream getIn() {
        return in;
    }
    
    protected void setOut(DataOutputStream out) {
        this.out = out;
    }
    
    protected DataOutputStream getOut() {
        return out;
    }
    
    // Variables declaration
    private Socket conexao;
    private DataInputStream in;
    private DataOutputStream out;
    private String mensagemIn = "";
    private String mensagemOut = "";
}

O problema está quando envia a mensagem, connect.setMensagemOut(userName.getText()+":"+passWord.getText());,
e na classe ConnectServer não “seta” a variável mensagemOut, porque?

Muito Obrigado, Fábio