Servidor Recebendo Objetos Diferentes dos Clientes

Olá estou tentando Criar um servidor que possa receber vários tipos de objetos diferentes proveniente dos clientes, eis ai o código das Threads Produtora e Consumidora respectivamente :

package novoservidor;

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

public class Produtora implements Runnable {

    Fila fila;
    Socket conexao;

    public Produtora(Fila F, Socket conexao) {

        this.fila = F;
        this.conexao = conexao;
    }

    public void run() {
        try {

            DataInputStream entrada;
            entrada = new DataInputStream(conexao.getInputStream());
            ObjectInputStream recebe = new ObjectInputStream(entrada);
            Object m;
           
            while (true) {
                m = recebe.readObject();

                if (!(fila.contemElemento(m))) {
                    fila.insere(m);
                }
            }

        } catch (IOException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException ex) {
            ex.printStackTrace();
        }
    }
}


package novoservidor;

import java.io.DataOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.util.ArrayList;

public class Consumidora implements Runnable {

    Fila fila;
    ArrayList<Socket> conexoes = new ArrayList<Socket>();

    public Consumidora(Fila F, ArrayList<Socket> conexoes) {
        this.fila = F;
        this.conexoes = conexoes;
    }

    public void run() {
        try {
            DataOutputStream out;
            ObjectOutputStream manda;
            while (true) {
                Object mens = fila.tira();
                for (int i = 0; i < conexoes.size(); i++) {

                    out = new DataOutputStream(conexoes.get(i).getOutputStream());
                    manda = new ObjectOutputStream(out);
                    manda.writeObject(mens);
                    manda.flush();
                }
            }
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

Quando ele recebe a mensagem de um cliente exibe o seguinte erro: java.lang.ClassNotFoundException: cliente.Mensagem.
Não entendo porque ele não consegue achar a classe, não sei se ele está procurando no seu próprio pacote ou no cliente, eu criei a classe correspondente ao objeto que eu quero mandar no servidor, o erro persistiu. Se alguém ai já passou por algum problema parecido ou se sabe o que pode estar acontecendo ficarei grato com a ajuda. Obrigado.

Jovem,

Quando serializamos um objeto ele é salvo em algum diretório especificado por nós!!
Vc está enviando esse objeto via Socket???

Veja um link sobre serialização:

http://www.devmedia.com.br/articles/viewcomp.asp?comp=3050

Sim estou enviando os objetos via Socket, acabei de fazer um teste criando um outro servidor e um cliente novamente, o servidor criado como eu postei ai funcionou numa boa, mas agora quando mudei as classes de pacote, tanto no cliente quanto no servidor o erro voltou a aparecer, parece que ele procura em um pacote que a classe não está ou coisa do tipo.

Transferir objetos é muito ruim e deve ser evitado.
A razão é exatamente esta que vc encontrou. As classes têm que existir com a mesma versão dos dois lados.
Mas se isso é verdade então usar xml ou qq outro formato independente é muito mais facil.

Entendo, já ouvi em algum outro topico alguém falando da dificuldade da transferencia direta de objetos, porem como preciso entregar tal projeto daqui 24 horas acho que não terei muito tempo para implementar a serialização em XML, eu teria que aprender como funciona, talvez coloco como uma sugestão de mudança para o projeto, e são apenas 3 tipos de objetos que desejo passar, então o numero de classes a ser criado em ambas as partes não é muito grande. Mas agradeço muito a ajuda.